diff options
author | Junio C Hamano <gitster@pobox.com> | 2018-07-18 22:20:29 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2018-07-18 22:20:29 +0300 |
commit | 2516b4711f6e180516162c384b7e94832e7189f6 (patch) | |
tree | 313a9be8723be077ed423d32822bdc61d8c4132a | |
parent | d349e188abb88879f4c2cae9f089509b25606928 (diff) | |
parent | 15b76c1fb3ab013b99498c9dca333aaa4808927e (diff) |
Merge branch 'xy/format-patch-prereq-patch-id-fix'
Recently added "--base" option to "git format-patch" command did
not correctly generate prereq patch ids.
* xy/format-patch-prereq-patch-id-fix:
format-patch: clear UNINTERESTING flag before prepare_bases
-rw-r--r-- | builtin/log.c | 1 | ||||
-rwxr-xr-x | t/t4014-format-patch.sh | 6 |
2 files changed, 5 insertions, 2 deletions
diff --git a/builtin/log.c b/builtin/log.c index c77af79755..805f89d7e1 100644 --- a/builtin/log.c +++ b/builtin/log.c @@ -1756,6 +1756,7 @@ int cmd_format_patch(int argc, const char **argv, const char *prefix) if (base_commit || base_auto) { struct commit *base = get_base_commit(base_commit, list, nr); reset_revision_walk(); + clear_object_flags(UNINTERESTING); prepare_bases(&bases, base, list, nr); } diff --git a/t/t4014-format-patch.sh b/t/t4014-format-patch.sh index 028d5507a6..53880da7bb 100755 --- a/t/t4014-format-patch.sh +++ b/t/t4014-format-patch.sh @@ -1554,13 +1554,15 @@ test_expect_success 'format-patch -o overrides format.outputDirectory' ' test_expect_success 'format-patch --base' ' git checkout side && - git format-patch --stdout --base=HEAD~3 -1 | tail -n 7 >actual && + git format-patch --stdout --base=HEAD~3 -1 | tail -n 7 >actual1 && + git format-patch --stdout --base=HEAD~3 HEAD~.. | tail -n 7 >actual2 && echo >expected && echo "base-commit: $(git rev-parse HEAD~3)" >>expected && echo "prerequisite-patch-id: $(git show --patch HEAD~2 | git patch-id --stable | awk "{print \$1}")" >>expected && echo "prerequisite-patch-id: $(git show --patch HEAD~1 | git patch-id --stable | awk "{print \$1}")" >>expected && signature >> expected && - test_cmp expected actual + test_cmp expected actual1 && + test_cmp expected actual2 ' test_expect_success 'format-patch --base errors out when base commit is in revision list' ' |