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

Re: git push [rejected] question

From
Jeff King <peff@peff.net>
Date
Feb 19, 2008, 15:08 UTC
Message-ID
<20080219150826.GA24499@sigill.intra.peff.net>
In-Reply-To
<76718490802190509k20225092o66853916f48e08b1@mail.gmail.com>
On Tue, Feb 19, 2008 at 08:09:36AM -0500, Jay Soffian wrote:
Show 13 quoted lines
> git-push(1) is a bit confusing I think:
> 
>   "Note: If no explicit refspec is found, (that is neither on the command line
>   nor in any Push line of the corresponding remotes file---see below), then all
>   the heads that exist both on the local side and on the remote side are
>   updated."
> 
> is clear enough, but then:
> 
>   "--all Instead of naming each ref to push, specifies that all refs under
>   $GIT_DIR/refs/heads/ be pushed."
> 
> So what is '--all' needed for then?

In the first case we push "matching" refs: any head which already exists on both sides. In the second case, we push all heads which exist on the sending send, whether or not a matching ref already exists on the remote side.

I think the first statement could be made to emphasize the matching aspect a little more, since a quick read makes it seem like it's pushing the union of the two sets, not the intersection of the two sets.

> It seems like the default should be to push just the current branch
> ... this would correspond to what a user of git pull expects (even
> though the converse of git-push is really git-fetch, for a new user,
> that might not be entirely clear).

I agree with you, but others do not; this has come up several times in the past (there was some discussion a week or two ago in the thread "Minor annoyance with git push").

-Peff
Previous: Jay SoffianNext: Jay Soffian
Message 4 of 19 in “git push [rejected] question”
  1. Jason GarberFeb 18, 2008
  2. Jeff KingFeb 19, 2008
  3. Jay SoffianFeb 19, 2008
  4. Jeff KingFeb 19, 2008
  5. Jay SoffianFeb 19, 2008
  6. Jeff KingFeb 19, 2008
  7. Johannes SchindelinFeb 19, 2008
  8. push: annoy all users by deprecating the default semanticsJohannes Schindelin, Feb 19, 2008
  9. Jason GarberFeb 19, 2008
  10. Johannes SchindelinFeb 19, 2008
  11. Jeff KingFeb 19, 2008
  12. Johannes SchindelinFeb 19, 2008
  13. Jeff KingFeb 19, 2008
  14. Govind SalinasFeb 20, 2008
  15. Junio C HamanoFeb 20, 2008
  16. Govind SalinasFeb 20, 2008
  17. Junio C HamanoFeb 20, 2008
  18. Jay SoffianFeb 19, 2008
  19. Jeff KingFeb 19, 2008

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.