Re: [PATCH v4 1/5] refs: introduce `is_pseudoref()` and `is_headref()`
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Feb 12, 2024, 17:01 UTC
- Message-ID
- <xmqqeddh7h2l.fsf@gitster.g>
- In-Reply-To
- <ZcoTbRxIaGmTd4fJ@tanuki>
Patrick Steinhardt <ps@pks.im> 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.