]> git.ipfire.org Git - thirdparty/git.git/commit
show-ref --verify: accept pseudorefs
authorPhillip Wood <phillip.wood@dunelm.org.uk>
Wed, 7 Feb 2024 16:44:35 +0000 (16:44 +0000)
committerJunio C Hamano <gitster@pobox.com>
Wed, 7 Feb 2024 17:12:47 +0000 (09:12 -0800)
commit1dbe40156307763255d96653cc853ef4ff841920
treeb190d4904e85c0a8d4c983abd51c321089ba59ad
parent235986be822c9f8689be2e9a0b7804d0b1b6d821
show-ref --verify: accept pseudorefs

"git show-ref --verify" is useful for scripts that want to look up a
fully qualified refname without falling back to the DWIM rules used by
"git rev-parse" rules when the ref does not exist. Currently it will
only accept "HEAD" or a refname beginning with "refs/". Running

    git show-ref --verify CHERRY_PICK_HEAD

will always result in

    fatal: 'CHERRY_PICK_HEAD' - not a valid ref

even when CHERRY_PICK_HEAD exists. By calling refname_is_safe() instead
of comparing the refname to "HEAD" we can accept all one-level refs that
contain only uppercase ascii letters and underscores.

Signed-off-by: Phillip Wood <phillip.wood@dunelm.org.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/show-ref.c
t/t1403-show-ref.sh