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

Re: avoiding fetching specific refs from a remote

From
Jacob Keller <jacob.keller@gmail.com>
Date
Aug 5, 2020, 20:31 UTC
Message-ID
<CA+P7+xofEHdvVOy-9RLUF=kXCjNEXrs0M3Mp6h8RgehY2KHaaw@mail.gmail.com>
In-Reply-To
<20200805063704.GA2690083@coredump.intra.peff.net>
On Tue, Aug 4, 2020 at 11:37 PM Jeff King <peff@peff.net> wrote:
Show 31 quoted lines
>
> On Tue, Aug 04, 2020 at 02:53:30PM -0700, Jacob Keller wrote:
>
> > This results in the annoying completion behavior where:
> >
> > $git checkout ma<TAB>
> > main
> > master
> >
> > Essentially, because both main and master have similar names, tab
> > completion requires remembering to type one additional character than
> > I am used to.
>
> Heh, I didn't think anybody considered that implication so far; the fact
> that they were similar names has generally been considered a positive. I
> agree it would be annoying.
>
> > I'd like to be able to customize my pull so that I either (a) exclude
> > the reference when performing a fetch, or (b) exclude the reference
> > when tab completing.
>
> Not quite (b), but if you:
>
>   - delete any local "master" branch, if you haven't already
>
>   - set $GIT_COMPLETION_CHECKOUT_NO_GUESS to "1"
>
> then it shouldn't complete "master". The second is necessary because
> we'd try to complete the magic "git checkout master" that auto-creates
> the branch from the remote version.
>

I don't like this approach because I like having the guessing options available in most repositories.

Show 23 quoted lines
> > something like adding a remote.<name>.excludeRefs which would allow
> > specifying a set of references to exclude from matching the refspec..
> >
> > I realize I could customize the refspec to list the set of things I
> > want, but then I would miss any potential future branches until I
> > updated my remote config again.
>
> This is definitely a reasonable thing to want, and it has come up off
> and on over the years. One search term for the list archive is "negative
> refspecs", though it turns up a lot of useless hits when the two words
> are not directly adjacent.
>
> This old thread might be worth reading:
>
>   https://lore.kernel.org/git/20140124090104.GA396@x4/
>
> and there is even a patch in there:
>
>   https://lore.kernel.org/git/20140125013433.GA22336@sigill.intra.peff.net/
>
> but I didn't go over it carefully enough to know whether it is utter
> trash, or something that could be used as a starting point.
>
Thanks, it looks like this is at least sensible.
> -Peff
Previous: Jeff KingNext: Philippe Blain
Message 6 of 10 in “avoiding fetching specific refs from a remote”
  1. Jacob KellerAug 4, 2020
  2. Jeff KingAug 5, 2020
  3. Junio C HamanoAug 5, 2020
  4. Jacob KellerAug 5, 2020
  5. Jeff KingAug 5, 2020
  6. Jacob KellerAug 5, 2020
  7. Philippe BlainAug 5, 2020
  8. Eric WongAug 7, 2020
  9. Jacob KellerAug 12, 2020
  10. Jeff KingAug 13, 2020

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.