Hacker News new | ask | show | jobs
by mkesper 402 days ago
The modern workflow is just to let GitHub squeeze yor shit commits into one and then rebasing that.
3 comments

Hardly anything modern about it, but it's a way of keeping a somewhat sane history. Certainly better than merging 'fix' 'fix' 'fix comments' into master.

The thing is, we could have done better (and have been) since before git even existed.

The "squash everything" mantra turns git commit history into a series of snapshots devoid of any logical notion about how code evolves.

Squashed commits are strictly worse than plain, non-fast-forwarded merges from rebased branches.

Depends on your commits. If it’s untested noise I’d much rather they’re squashed so bisect doesn’t meander in trash.
Bisecting with --first-parent takes care of this.
There are legit reasons to have a series of commits within one PR, and rebase and merge them as is, and use amend/fixup and force pushes to maintain them cleanly.

It's not my favourite process, but...