Hi Phillip,
On 12/13/22 15:04, Phillip Wood wrote:
Hi Christian
On 13/12/2022 10:37, Cristian Ciocaltea wrote:
Currently '--onto' works as if the user provided the
'--reapply-cherry-picks' flag,
--onto does not affect the cherry-pick detection. When running
git rebase --onto new-base upstream feature
any commits in upstream have been cherry-picked from feature they will
not be rebased. What it does not do is look for cherry-picks in
onto...feature. It would be nice to add that but I'm not sure it is
straight forward to do so and still exclude commits that have been
cherry-picked from feature to upstream.
The proposed patch enables looking for commits into new-base..feature
range and excluding the ones reachable from upstream. Since this is a
change in the existing behavior, we might need to introduce a new flag
to enable it. I previously suggested to use '--no-reapply-cherry-picks'
for this purpose, but now it's pretty obvious this will be a source of
confusion, since the "cherry-picks" term refers to the commits picked
from feature to upstream instead of new-base, as you already mentioned.
I agree it would be nice to support both exclusion ranges, but I'm not
sure how complicated the implementation would be, since I don't have any
previous experience with the Git internals. Could this be added as a
separate feature at a later point?
Thanks,
Cristian
Best Wishes
Phillip