From: Felipe Contreras Date: Wed, 29 May 2013 05:55:23 GMT Subject: Re: [PATCH 5/5] rebase: fix cherry-pick invocations Message-ID: <51a5984b6e642_7242869e1c714fe@nysa.mail> In-Reply-To: <7vzjvewwne.fsf@alter.siamese.dyndns.org> Junio C Hamano wrote: > Felipe Contreras writes: > > > So that all the tests pass. > > > > Signed-off-by: Felipe Contreras > > --- > > git-rebase--cherry.sh | 17 ++++++++++++++++- > > 1 file changed, 16 insertions(+), 1 deletion(-) > > > > diff --git a/git-rebase--cherry.sh b/git-rebase--cherry.sh > > index ca78b1b..c3a2ac9 100644 > > --- a/git-rebase--cherry.sh > > +++ b/git-rebase--cherry.sh > > @@ -23,11 +23,26 @@ test -n "$rebase_root" && root_flag=--root > > mkdir "$state_dir" || die "Could not create temporary $state_dir" > > : > "$state_dir"/cherry || die "Could not mark as cherry" > > > > +if test -n "$rebase_root" > > +then > > + revisions="$onto...$orig_head" > > +else > > + revisions="$upstream...$orig_head" > > +fi > > "So that all the tests pass" needs a bit more explanation to say for > cherry-pick codepath why and how two-dot range fails and why and how > three-dot variant with --right-only fixes it. What are the problematic > cases? There's too many failures to count. We are blindingly applying a series of commits on top of another without checking if they are merges or if they already exist in the destination branch. -- Felipe Contreras