git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 1/5] git-prompt: do not look for refs/stash in $GIT_DIR

From
Jeff King <peff@peff.net>
Date
Aug 25, 2014, 12:46 UTC
Message-ID
<20140825124631.GC17288@peff.net>
In-Reply-To
<E1XLXkh-0002sL-IJ@iramx2.ira.uni-karlsruhe.de>
On Sun, Aug 24, 2014 at 08:22:41PM +0700, Gábor Szeder wrote:
Show 9 quoted lines
> On Aug 23, 2014 12:26 PM, Jeff King <peff@peff.net> wrote:
> > Since dd0b72c (bash prompt: use bash builtins to check stash 
> > state, 2011-04-01), git-prompt checks whether we have a 
> > stash by looking for $GIT_DIR/refs/stash. Generally external 
> > programs should never do this, because they would miss 
> > packed-refs.
> 
> Not sure whether the prompt script is external program or not, but
> doesn't matter, this is the right thing to do.

Yeah, by external I just meant "nothing outside of refs.c should make this assumption".

Show 17 quoted lines
> > That commit claims that packed-refs does not pack 
> > refs/stash, but that is not quite true. It does pack the 
> > ref, but due to a bug, fails to prune the ref. When we fix 
> > that bug, we would want to be doing the right thing here. 
> >
> > Signed-off-by: Jeff King <peff@peff.net> 
> > --- 
> > I know we are pretty sensitive to forks in the prompt code (after all, 
> > that was the point of dd0b72c). This patch is essentially a reversion of 
> > this hunk of dd0b72c, and is definitely safe.
> 
> I'm not sure, but if I remember correctly (don't have the means to
> check it at the moment, sorry) in that commit I also added a 'git
> pack-ref' invocation to the relevant test(s?) to guard us against
> breakages due to changes in 'git pack-refs'.  If that is so, then I
> think those invocations should be removed as well, as they'll become
> useless.

It did add that change (that's actually how I noticed the problem! Thank you for being thorough in dd0b72c). My inclination is to leave the pack-refs invocations, as they protect against a certain class of errors (we are not doing the risky behavior now, but the purpose of the test suite is to detect regressions; the next person to touch that code may not be so careful as you were).

I don't feel too strongly, though, so if we want them gone, I'm OK with that.

-Peff
Previous: Gábor Szeder
Message 2 of 2 in “Re: [PATCH 1/5] git-prompt: do not look for refs/stash in $GIT_DIR”
  1. Gábor SzederAug 24, 2014
  2. Jeff KingAug 25, 2014

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.