Re: [BUG?] HEAD detached at HEAD
- From
Matthieu Moy <matthieu.moy@grenoble-inp.fr>
- Date
- Sep 21, 2015, 07:42 UTC
- Message-ID
- <vpqk2rkcj67.fsf@anie.imag.fr>
- In-Reply-To
- <55FFB43B.5080002@drmicha.warpmail.net>
Michael J Gruber <git@drmicha.warpmail.net> writes:
Show 24 quoted lines
> ... in addition to my previous reply, looking at more context:
>
>>> --- a/wt-status.c
>>> +++ b/wt-status.c
>>> @@ -1319,6 +1319,13 @@ static int grab_1st_switch(unsigned char *osha1, unsigned char *nsha1,
>>> hashcpy(cb->nsha1, nsha1);
>>> for (end = target; *end && *end != '\n'; end++)
>>> ;
>>> + if (!memcmp(target, "HEAD", end - target)) {
>>> + /* Don't say "HEAD detached at HEAD" */
>>> + unsigned char head[GIT_SHA1_RAWSZ];
>>> + get_sha1("HEAD", head);
>>> + strbuf_addstr(&cb->buf, find_unique_abbrev(head, DEFAULT_ABBREV));
>>> + return 1;
>>> + }
>>> strbuf_add(&cb->buf, target, end - target);
>>> return 1;
>>> }
>>>
>>> What do you think?
>
> I think we should return (the hex repr. of) nsha1 instead of resolving
> HEAD at its current state. That should solve the present problem (and
> leave the more difficult reflog issue for the future).Indeed, resolving HEAD to its current state is wrong. I'll submit a proper patch soon.
Thanks,
-- Matthieu Moy http://www-verimag.imag.fr/~moy/