git-bisect-rebase(1) General Commands Manual git-bisect-rebase(1) NAME git-bisect-rebase - Rebase a branch bisecting to find conflicting commits SYNOPSIS git bisect-rebase [option ...] [upstream [branch]] git bisect-rebase [--abort|--continue|--quit] DESCRIPTION git-bisect-rebase(1) rebases branch on top of upstream progressively, stopping at each commit from upstream which introduces a conflict. It uses git-bisect(1) to find the conflicts efficiently, and git-rebase(1) to perform the rebase operations. PARAMETERS upstream and branch are interpreted as if by git-rebase(1). OPTIONS Mode options --abort Abort the bisect-rebase operation and reset HEAD to the original branch. --continue Restart the bisect-rebase process after having resolved a rebase conflict. --quit Abort the bisect-rebase operation, but HEAD is not reset. git-bisect(1) options The following options are interpreted as if by git-bisect(1). --first-parent git-rebase(1) options The following options are interpreted as if by git-rebase(1). --rebase-merges[=arg] -r --no-rebase-merges --apply --empty=arg --[no-]keep-empty --[no-]reapply-cherry-picks --[no-]allow-empty-message --merge -m --strategy=arg -s arg --strategy-option=arg -X arg --[no-]rerere-autoupdate --gpg-sign[=arg] -Sarg --no-gpg-sign --quiet -q --verbose -v --[no-]stat -n --[no-]verify -Carg --no-ff --force-rebase -f --[no-]ignore-whitespace --[no-]update-refs --exec=arg -x arg Other options --pre-exec=cmd Run cmd at the target commit found by git-bisect(1), before every git-rebase(1) operation. The exit code will be interpreted as if by git bisect run cmd. --post-exec=cmd Run cmd after a git-rebase(1) operation finishes successfully. The exit code will be interpreted as if by git bisect run cmd. EXAMPLES Rebasing a single branch Algorithm for rebasing a branch 'x' on top of 'master'. git bisect-rebase master x; # if no conflicts, done # loop: # resolve conflicts git rebase --continue; git bisect-rebase --continue; # ... rinse and repeat (goto loop) Rebasing a tree of branches Algorithm for rebasing a tree of branches on top of 'master'. Consider a branch 'A', with two childs 'B' and 'C'. # loop: git bisect-rebase master A; # if no conflicts, goto children git rebase --abort; git bisect-rebase --quit; # children: git bisect-rebase A B; # follow algorithm for single branch with master=A and x=B git bisect-rebase A C; # follow algorithm for single branch with master=A and x=C # if 'goto children' above, done git tag tmpA; git bisect-rebase master A; # resolve conflicts git rebase --continue; git bisect-rebase --quit; git rebase --onto A tmpA B; # resolve conflicts, if any git rebase --onto A tmpA C; # resolve conflicts, if any git tag -d tmpA; # ... rinse and repeat (goto loop) SEE ALSO git-bisect(1), git-rebase(1) Linux man-pages 6.20 2026-10-10 git-bisect-rebase(1)