Quote:
Originally Posted by Victor
my understanding is that squashing commits is not necessary but it makes fixing merge conflicts a ton easier. otherwise there may be a situation where you need to fix the merge conflicts for every commit you made, rather than just the final version of your code.
This is only true if you fast-forward - if you merged at the end, you can always revert that single merge commit.
I'm personally not a big fan of squashing but looking at git history linearly for a dev/master branch without squashing can be confusing because things are generally ordered by when the commit was made, not when the commit was introduced to the branch.
Edit: I misread what you said - what I'm saying has to do with reverting, not fixing merge conflicts. I'm not aware of any situation where merge conflicts have to be fixed for each commit - the merge itself is the commit that introduced conflicts that need to be resolved.