diff options
author | Junio C Hamano <gitster@pobox.com> | 2017-10-18 14:18:58 +0900 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2017-10-18 14:18:58 +0900 |
commit | 6b895039f4c81e8b50f0d5f7d22f400e52e9bfc6 (patch) | |
tree | af34ba0aba8da54090942f32102155e74ddf94f7 | |
parent | 05e408dd1aaa45d3c74e201bc218f65c3f93d99b (diff) | |
parent | 1d0538e4860f3827bb711a4a05dbc2f194f767be (diff) | |
download | git-6b895039f4c81e8b50f0d5f7d22f400e52e9bfc6.tar.gz git-6b895039f4c81e8b50f0d5f7d22f400e52e9bfc6.tar.xz |
Merge branch 'mh/packed-ref-store-prep' into maint
Fix regression to "gitk --bisect" by a recent update.
* mh/packed-ref-store-prep:
rev-parse: don't trim bisect refnames
-rw-r--r-- | builtin/rev-parse.c | 4 | ||||
-rwxr-xr-x | t/t6002-rev-list-bisect.sh | 18 |
2 files changed, 18 insertions, 4 deletions
diff --git a/builtin/rev-parse.c b/builtin/rev-parse.c index c78b7b33d..7f965fe74 100644 --- a/builtin/rev-parse.c +++ b/builtin/rev-parse.c @@ -757,8 +757,8 @@ int cmd_rev_parse(int argc, const char **argv, const char *prefix) continue; } if (!strcmp(arg, "--bisect")) { - for_each_ref_in("refs/bisect/bad", show_reference, NULL); - for_each_ref_in("refs/bisect/good", anti_reference, NULL); + for_each_fullref_in("refs/bisect/bad", show_reference, NULL, 0); + for_each_fullref_in("refs/bisect/good", anti_reference, NULL, 0); continue; } if (opt_with_value(arg, "--branches", &arg)) { diff --git a/t/t6002-rev-list-bisect.sh b/t/t6002-rev-list-bisect.sh index 534903bbd..a66140803 100755 --- a/t/t6002-rev-list-bisect.sh +++ b/t/t6002-rev-list-bisect.sh @@ -236,17 +236,31 @@ test_sequence "--bisect" # # -test_expect_success '--bisect can default to good/bad refs' ' +test_expect_success 'set up fake --bisect refs' ' git update-ref refs/bisect/bad c3 && good=$(git rev-parse b1) && git update-ref refs/bisect/good-$good $good && good=$(git rev-parse c1) && - git update-ref refs/bisect/good-$good $good && + git update-ref refs/bisect/good-$good $good +' +test_expect_success 'rev-list --bisect can default to good/bad refs' ' # the only thing between c3 and c1 is c2 git rev-parse c2 >expect && git rev-list --bisect >actual && test_cmp expect actual ' +test_expect_success 'rev-parse --bisect can default to good/bad refs' ' + git rev-parse c3 ^b1 ^c1 >expect && + git rev-parse --bisect >actual && + + # output order depends on the refnames, which in turn depends on + # the exact sha1s. We just want to make sure we have the same set + # of lines in any order. + sort <expect >expect.sorted && + sort <actual >actual.sorted && + test_cmp expect.sorted actual.sorted +' + test_done |