diff options
author | Junio C Hamano <gitster@pobox.com> | 2024-02-13 14:44:47 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2024-02-13 14:44:47 -0800 |
commit | 908fde12b0d59645cdb684ba9862e7665d89695e (patch) | |
tree | 57334c807603ab3e41c4d1fe2a974fa2e5b0e470 | |
parent | 7adf215fede93114f8ee376c82adb5b8dd0f73c7 (diff) | |
parent | 0aabeaa562fa269834f10cbda6e966b553dcec71 (diff) | |
download | git-908fde12b0d59645cdb684ba9862e7665d89695e.tar.gz |
Merge branch 'tc/show-ref-exists-fix' into maint-2.43
Update to a new feature recently added, "git show-ref --exists".
* tc/show-ref-exists-fix:
builtin/show-ref: treat directory as non-existing in --exists
-rw-r--r-- | builtin/show-ref.c | 2 | ||||
-rwxr-xr-x | t/t1403-show-ref.sh | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/builtin/show-ref.c b/builtin/show-ref.c index aaa2c39b2f..79955c2856 100644 --- a/builtin/show-ref.c +++ b/builtin/show-ref.c @@ -238,7 +238,7 @@ static int cmd_show_ref__exists(const char **refs) if (refs_read_raw_ref(get_main_ref_store(the_repository), ref, &unused_oid, &unused_referent, &unused_type, &failure_errno)) { - if (failure_errno == ENOENT) { + if (failure_errno == ENOENT || failure_errno == EISDIR) { error(_("reference does not exist")); ret = 2; } else { diff --git a/t/t1403-show-ref.sh b/t/t1403-show-ref.sh index d477689e33..872ba8f110 100755 --- a/t/t1403-show-ref.sh +++ b/t/t1403-show-ref.sh @@ -262,9 +262,9 @@ test_expect_success '--exists with non-commit object' ' test_expect_success '--exists with directory fails with generic error' ' cat >expect <<-EOF && - error: failed to look up reference: Is a directory + error: reference does not exist EOF - test_expect_code 1 git show-ref --exists refs/heads 2>err && + test_expect_code 2 git show-ref --exists refs/heads 2>err && test_cmp expect err ' |