Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

With this sort of system you generally squash your commits together to form one-per-reviewable-thing. Or at least you rewrite things a bit to make it approachable. E.g. I split things apart so one commit is an obviously-correct refactor and the later ones are pure changes.

I understand some of the "no, merges are superior because they retain all history" proponents (not claiming you are one, just aiming to head off that flood), but all those dead ends and refactors along the way are just those - dead ends and refactors. They ruin the ability to bisect, for instance, because they are rarely all functional. Intentional commits, like a stacked workflow supports in a tool like Gerrit, lets you have a wonderfully understandable history that works at every point.



“They ruin the ability to bisect” is something I find myself constantly fighting. Just use “—-first-parent” in git log!!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: