Git rebase: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 18: Line 18:
==--fork-point==
==--fork-point==


<font color=darkgray>TODO</font>
The option that allows specifying the ancestor commit after which all commits will be rebased. Normally, this is implicitly calculated by git with:
 
git merge-base --fork-point <''upstream''> <''branch''>
 
command. If fork-point ends up being empty as result of this command, <''upstream''> will be used as fallback.

Revision as of 16:34, 26 September 2019

Internal

Overview

git rebase reapplies commits on top of another base tip, removing the original commits. For more details on how rebasing works, and some concrete examples, see:

Git Rebasing

Options

--onto

git rebase --onto <newbase>

Starting point at which to create the new commits. If the --onto option is not specified, the starting point is <upstream> (what does that mean?). It may be any valid commit, not just an existing branch name.

--fork-point

The option that allows specifying the ancestor commit after which all commits will be rebased. Normally, this is implicitly calculated by git with:

git merge-base --fork-point <upstream> <branch>

command. If fork-point ends up being empty as result of this command, <upstream> will be used as fallback.