Git rebase -i is not that scary
- Programming
- Developer Tools
- Open Source
The post walks through `git rebase -i` as a way to reorder, squash, reword, or drop commits before sharing a branch. It frames interactive rebase as a normal cleanup tool for local history, not a risky last-resort operation. People mostly agreed with that, but the valuable point was sharper than the post’s headline: rebase stops feeling scary once you understand Git’s recovery model. Committed work is usually recoverable. Uncommitted work is what you actually lose. That pushed `git reflog`, `ORIG_HEAD`, and cheap backup refs like throwaway branches or tags to the center of the conversation, not as edge-case tricks but as the prerequisite mental model for using history rewriting confidently.
If your team wants cleaner reviewable commits, teach reflog, ORIG_HEAD, fixup/autosquash, rerere, and diff checks before teaching rebasing itself. If your workflow rarely depends on curated history, don’t force heavy rebase culture where squash merges or first-parent history already solve the real problem.
-
cachebag.sh
- Discuss on HN