Re: [PATCH] Proof-of-concept patch to remember what the detached HEAD was
- From
Daniel Barkalow <barkalow@iabervon.org>
- Date
- Oct 14, 2009, 15:56 UTC
- Message-ID
- <alpine.LNX.2.00.0910141143520.32515@iabervon.org>
- In-Reply-To
- <20091014050851.GE31810@coredump.intra.peff.net>
On Wed, 14 Oct 2009, Jeff King wrote:
Show 16 quoted lines
> On Wed, Oct 14, 2009 at 12:44:34AM -0400, Daniel Barkalow wrote:
>
> > +char *get_detached_head_string(void)
> > +{
> > + char *filename = git_path("DETACH_NAME");
> > + struct stat st;
> > + if (stat(filename, &st) || !S_ISREG(st.st_mode))
> > + return NULL;
> > + struct strbuf buf = STRBUF_INIT;
> > + strbuf_read_file(&buf, filename, st.st_size);
> > + strbuf_trim(&buf);
> > + return strbuf_detach(&buf, 0);
> > +}
>
> Would it hurt to tuck this information into HEAD itself, as we already
> put arbitrary text into FETCH_HEAD?I don't know; I'll have to try that and see if the tools that handle HEAD are happy with extra text there. If it works, it's a good solution.
I think I tried it at some point and things failed all over the place, but that may have been before symrefs, when you could get the actual sha1 hash out of HEAD with "$(cat .git/HEAD)".
-Daniel *This .sig left intentionally blank*