mirror of
https://github.com/git/git.git
synced 2024-11-24 02:17:02 +08:00
describe: Avoid unnecessary warning when using --all
In 212945d4
("Teach git-describe to verify annotated tag names
before output") git-describe learned how to output a warning if
an annotated tag object was matched but its internal name doesn't
match the local ref name.
However, "git describe --all" causes the local ref name to be
prefixed with "tags/", so we need to skip over this prefix before
comparing the local ref name with the name recorded inside of the
tag object.
Patch-by: René Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
4ed19a3c17
commit
81dc223deb
@ -160,7 +160,7 @@ static void display_name(struct commit_name *n)
|
||||
n->tag = lookup_tag(n->sha1);
|
||||
if (!n->tag || parse_tag(n->tag) || !n->tag->tag)
|
||||
die("annotated tag %s not available", n->path);
|
||||
if (strcmp(n->tag->tag, n->path))
|
||||
if (strcmp(n->tag->tag, all ? n->path + 5 : n->path))
|
||||
warning("tag '%s' is really '%s' here", n->tag->tag, n->path);
|
||||
}
|
||||
|
||||
|
@ -100,6 +100,12 @@ check_describe B --tags HEAD^^2^
|
||||
check_describe B-0-* --long HEAD^^2^
|
||||
check_describe A-3-* --long HEAD^^2
|
||||
|
||||
: >err.expect
|
||||
check_describe A --all A^0
|
||||
test_expect_success 'no warning was displayed for A' '
|
||||
test_cmp err.expect err.actual
|
||||
'
|
||||
|
||||
test_expect_success 'rename tag A to Q locally' '
|
||||
mv .git/refs/tags/A .git/refs/tags/Q
|
||||
'
|
||||
|
Loading…
Reference in New Issue
Block a user