Given I have these logical commits on two branches:
normalbranch: A - B - C - D funkybranch: Z - Y - X
git co normalbranch git rebase --onto X C
Then the logical commits of
normalbranch will now be:
normalbranch: Z - Y - X - C - D
We’ve given commit
C the new parent of
C’s hash will change and
D’s hash will change.
I use this when I build on top of a branch that I’ve already submitted for a PR. That branch will get merged into the new root branch, and then I’ll need the new parent on the root branch for the commits that I’m currently working on.