What problem does it solve?
Use when squashing fixup commits into earlier commits, doing interactive rebase cleanup on a feature branch, recovering from a failed autosquash rebase, inserting a reformatting commit before existing code changes, or moving/splitting file changes between commits. Covers the standard fixup workflow, dropped-commit recovery, pitfalls of custom GIT_SEQUENCE_EDITOR scripts, the replay-and-reformat pattern, and the checkout-and-reconstruct pattern for rearranging commit contents.
Core Features & Use Cases
- Guide and automate fixup-based rebasing to streamline commit history on feature branches.
- Provide safe recovery steps using reflog and resets after failed rebases.
- Demonstrate patterns for rearranging commits, including replay-and-reformat and checkout-and-reconstruct.
- Warn about and avoid common pitfalls of custom GIT_SEQUENCE_EDITOR scripts.
Quick Start
Describe a safe, end-to-end git rebase workflow that uses fixup commits and autosquash for a feature branch.