From: Cristian Ciocaltea Date: Tue, 13 Dec 2022 15:34:14 GMT Subject: Re: [RFC PATCH 0/1] rebase --onto detection of already applied commits Message-ID: <9e06bfd1-3e63-2414-e18c-6901fbb290e3@collabora.com> In-Reply-To: <51209c56-c82e-c393-6983-2a8c1a7388d3@dunelm.org.uk> 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