diff options
-rw-r--r-- | revision.c | 1 | ||||
-rwxr-xr-x | t/t6007-rev-list-cherry-pick-file.sh | 14 |
2 files changed, 15 insertions, 0 deletions
diff --git a/revision.c b/revision.c index c193c3ea2..33d092c3c 100644 --- a/revision.c +++ b/revision.c @@ -1024,6 +1024,7 @@ int setup_revisions(int argc, const char **argv, struct rev_info *revs, const ch } if (!strcmp(arg, "--cherry-pick")) { revs->cherry_pick = 1; + revs->limited = 1; continue; } if (!strcmp(arg, "--objects")) { diff --git a/t/t6007-rev-list-cherry-pick-file.sh b/t/t6007-rev-list-cherry-pick-file.sh index 3faeae6c0..4b8611ce2 100755 --- a/t/t6007-rev-list-cherry-pick-file.sh +++ b/t/t6007-rev-list-cherry-pick-file.sh @@ -40,4 +40,18 @@ test_expect_success '--cherry-pick bar does not come up empty' ' ! test -z "$(git rev-list --left-right --cherry-pick B...C -- bar)" ' +test_expect_success '--cherry-pick with independent, but identical branches' ' + git symbolic-ref HEAD refs/heads/independent && + rm .git/index && + echo Hallo > foo && + git add foo && + test_tick && + git commit -m "independent" && + echo Bello > foo && + test_tick && + git commit -m "independent, too" foo && + test -z "$(git rev-list --left-right --cherry-pick \ + HEAD...master -- foo)" +' + test_done |