Rebase while preserving merge topology.
Section: History Rewriting
Interactive rebase preserving merges
bash
bash
git rebase -i --rebase-merges mainExplanation
Useful when you need the benefits of interactive rebase but your feature branch already contains meaningful merge structure.
Learn the surrounding workflow
Compare similar commands or jump into common fixes when this command is part of a bigger troubleshooting path.
Related commands
Same sheet · prioritizing History Rewriting
Interactive rebase last 5 commits
Open the last 5 commits in the interactive rebase todo list.
Rebase a branch onto a new base
Move a branch from one base commit or branch to another.
Amend last commit without changing message
Replace the most recent commit using the current staged changes.
Rewrite history to keep a subdirectory
Create a new history containing only one subdirectory.
Cherry-pick a range without committing
Apply commit changes into the index and working tree first.
Start a bisect session
Begin a binary search to find the commit that introduced a bug.