Hacker News new | ask | show | jobs
by rout39574 3203 days ago
I would think squash a poor default policy; it destroys information in the granularity of commit, and in the commit messages.
3 comments

I agree - you lose the build history, ability to see the incremental changes the author intended, can't go back to the code review to see what happened on that specific commit. I have a very difficult time understanding the desire to use --squash and merge --ff. The problem to me seems like a presentation issue, not a data issue.
If you use rebase or squash merge with something like Phabricator, you can always open up the Diff URL in the commit message and see the granular history (and discussion) if you care to.
Nothing is lost if there's no information there in the first place.
I agree; if your commits are poorly planned and poorly commented, then I don't see any particular reason to avoid squashing them.

But if your commits are poorly planned and commented, I would recommend trying to improve them, rather than reveling in the fact. ;)