Re: [PATCH v4 1/5] refs: introduce `is_pseudoref()` and `is_headref()`
From: Junio C Hamano <hidden>
Date: 2024-02-12 17:01:10
Patrick Steinhardt [off-list ref] writes:
I think it's quite confusing that `is_pseudoref()` not only checks whether the refname may be a pseudoref, but also whether it actually exists. Furthermore, why is a pseudoref only considered to exist in case it's not a symbolic ref? That sounds overly restrictive to me.
I am torn on this, but in favor of the proposed naming, primarily
because is_pseudoref_syntax() was about "does this string look like
the fullref a pseudoref would have?", and the reason why we wanted
to have this new function was we wanted to ask "does this string
name a valid pseudoref?"
Q: Is CHERRY_PICK_HEAD a pseudoref?
A: It would have been if it existed, but I see only
$GIT_DIR/CHERRY_PICK_HEAD that is a symbolic link, and it cannot
be a pseudoref.
I can certainly see a broken out set of helper functions to check
- Does this string make a good fullref for a pseudoref?
- Does a pseudoref with his string as its fullref exist?
independently. The first one would answer Yes and the second one
would answer No in such a context.
Thanks.