When you pull or check out a branch, Flint formats the fetched files using your local style and makes a temporary commit so that Git operations work without conflict. Then, before pushing, Flint resets that commit and re-applies formatting using the remote style. This ensures your working copy stays in your preferred format while the code pushed to the repository always matches the remote standard. This is why it needs more than pre and post commit hooks.
What's the difference between this and registering pre and post commit hooks?
When you pull or check out a branch, Flint formats the fetched files using your local style and makes a temporary commit so that Git operations work without conflict. Then, before pushing, Flint resets that commit and re-applies formatting using the remote style. This ensures your working copy stays in your preferred format while the code pushed to the repository always matches the remote standard. This is why it needs more than pre and post commit hooks.