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

Re: Update local tracking refs when pushing- no way to disable

From
Dan McGee <dpmcgee@gmail.com>
Date
Jul 6, 2007, 13:20 UTC
Message-ID
<449c10960707060620t3538b6d7w3e9cba50eaa0e369@mail.gmail.com>
In-Reply-To
<Pine.LNX.4.64.0707052320090.14638@iabervon.org>
On 7/5/07, Daniel Barkalow <barkalow@iabervon.org> wrote:
Show 20 quoted lines
> On Thu, 5 Jul 2007, Dan McGee wrote:
>
> > In this commit:
> > b516968ff62ec153e008d033c153affd7ba9ddc6
> >
> > I don't know if anyone else has the same way of working as I do, but I
> > tend to set the "remote.<name>.skipDefaultUpdate" property to true for
> > my publicly visible repository, just so I don't have duplicate branch
> > heads lying around in my local repository. Call this peculiar, but I
> > like it that way. However, git-push does not respect this property,
> > meaning I know have these branches whether I want them or not. In a
> > tool such as qgit or even 'git branch -a' output, it starts to get
> > awful cluttered.
>
> What git-fetch and git-push care about is whether you have an entry
> "remote.<name>.fetch" with a colon and stuff on the right of it. If so,
> this is a pattern that is used to generate the duplicate branch heads that
> you don't want. git clone sets it up to a default pattern
> (refs/remotes/origin/*), and I don't think there's any way to make it not
> do that, but you can just reconfigure it afterwards if you don't like it.
Wow, my bad here on this one. Didn't even think about the default config line:
[remote "toofishes.net"]
       url = toofishes.net:~/gitprojects/shoepolish.git/
       fetch = +refs/heads/*:refs/remotes/toofishes.net/*
       push = +refs/heads/*:refs/heads/*

Getting rid of that fetch line makes it work as intended. And not to hijack my own thread, but did behavior change between 1.5.2.3 and 1.5.3 wrt non-subset pushes?

$ git push toofishes.net
error: remote 'refs/heads/alpm_list_speed' is not a strict subset of
local ref 'refs/heads/alpm_list_speed'. maybe you are not up-to-date
and need to pull first?
error: remote 'refs/heads/asciidoc' is not a strict subset of local
ref 'refs/heads/asciidoc'. maybe you are not up-to-date and need to
pull first?
error: remote 'refs/heads/color' is not a strict subset of local ref
'refs/heads/color'. maybe you are not up-to-date and need to pull
first?
error: remote 'refs/heads/permissions' is not a strict subset of local
ref 'refs/heads/permissions'. maybe you are not up-to-date and need to
pull first?
error: remote 'refs/heads/pkgname_check' is not a strict subset of
local ref 'refs/heads/pkgname_check'. maybe you are not up-to-date and
need to pull first?
updating 'refs/heads/working'
 from 59d9ccf48d84fd1e59f78cb4dcf428e53d1c6911
 to   6b7b9743181078aa7152daffdfc1eaeb46304c0f
Generating pack...
Done counting 0 objects.
Writing 0 objects...
Total 0 (delta 0), reused 0 (delta 0)
refs/heads/working: 59d9ccf48d84fd1e59f78cb4dcf428e53d1c6911 ->
6b7b9743181078aa7152daffdfc1eaeb46304c0f

I thought the '+' sign in the push refspec would supress these errors, but it doesn't seem to. Running 'git push -f' works but that was never necessary before after doing some rebasing of these branches.

-Dan
Previous: Johannes Schindelin
Message 12 of 12 in “Update local tracking refs when pushing- no way to disable”
  1. Dan McGeeJul 6, 2007
  2. Johannes SchindelinJul 6, 2007
  3. Junio C HamanoJul 6, 2007
  4. Daniel BarkalowJul 6, 2007
  5. Marco CostalbaJul 6, 2007
  6. Shawn O. PearceJul 6, 2007
  7. Johannes SchindelinJul 6, 2007
  8. Daniel BarkalowJul 6, 2007
  9. Johannes SchindelinJul 6, 2007
  10. Daniel BarkalowJul 6, 2007
  11. Johannes SchindelinJul 6, 2007
  12. Dan McGeeJul 6, 2007

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.