How to use --onto
along with --rebase-merges
- in the given situation.
Current:
C0---C1---C2---C3---C4---C5---C6 (master)
\ |__________
\ \
F1---F2---F3---F4---F5---M1---F6---F7 (feature)
Goal: I want to get "onto" to C3
while preserving all merges:
C0---C1---C2---C3---C4---C5---C6 (master)
\ |_______________
\ \
F1'--F2'--F3'--F4'--F5'--M1'--F6'--F7' (feature)
The desired result is as if replaying history in feature
, except everything starts from C3
. The resulting files should be the same in the feature
branch before and after the rebase.
When I tried: git rebase -r --onto C3 master
:
I get something like this, resulting in dropping C4
and C5
from feature
.
C0---C1---C2---C3---C4---C5---C6 (master)
\ \____________________
\ \
F1---F2---F3---F4---F5---M1'--F6'--F7' (feature)
What am I missing? I have seen a few posts related to --onto
already, and I can't say I can work out what is going on here from there.