git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Paolo Bonzini <bonzini@gnu.org>
To: git@vger.kernel.org
Subject: push.default???
Date: Mon, 22 Jun 2009 12:02:33 +0200	[thread overview]
Message-ID: <h1nks1$vdl$1@ger.gmane.org> (raw)

Hi all, I just upgraded to git 1.6.3 and found this new little gem 
called push.default...

Now, having gone through an attempt of proposing a different semantics 
for "git push", this stroke me as total nonsense, because now we have 
two totally incompatible ways to specify push refspecs.

A sensible implementation would have been something like this:

1) Also in 1.6.3, invent a special refspec for "tracking", something 
like "HEAD>" (of course this is not a special case; "refs/heads/*>" 
would also work, yadda yadda)

2) Also in 1.6.3, add a "--push={current,tracking,matching,mirror}" 
option to "git remote add" that would set up a push refspec without the 
need to actually know refspec syntax. (--mirror would become just a 
synonym for --push=mirror).

3) Possibly, in 1.6.3 make "git clone" add a "push = :" line for the 
origin branch.  This was actually suggested in a patch by myself.

4) in 1.6.4 or 1.7.0, make "git push" fail outright if there is no push 
line, with text suggesting

   For remotes that you will create in the future, please use the
   `--push' argument to `git remote add'.  For existing remotes,
   you can use the following command to obtain the same behavior as
   git 1.6.3:

     git config --add remote.origin.push :

   For alternative configurations, please look at the release notes
   for git 1.6.4.

so that it's a quick cut'n'paste into the shell to fix this (though once 
per repository).


I know it's my fault that I did not follow the development of git last 
March, but I could not help ranting that it is extremely wrong to 
specify what to push without a refspec (in the configuration, not in the 
command line -- the cmdlines can always have more "porcelain" attached 
to them).

(1) and (2) in particular can still be straightened, and (4) too maybe. 
  I can work on the implementation if we agree on the details.

Paolo

             reply	other threads:[~2009-06-22 10:03 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-22 10:02 Paolo Bonzini [this message]
2009-06-22 16:31 ` push.default??? Junio C Hamano
2009-06-22 17:55   ` push.default??? Paolo Bonzini
2009-06-23 10:34 ` push.default??? Finn Arne Gangstad
2009-06-23 12:59   ` push.default??? Paolo Bonzini
2009-06-23 13:11     ` push.default??? Finn Arne Gangstad
2009-06-23 13:21       ` push.default??? Andreas Ericsson
2009-06-23 13:57         ` push.default??? Finn Arne Gangstad
2009-06-23 14:07           ` push.default??? Andreas Ericsson
2009-06-23 13:28       ` push.default??? Paolo Bonzini
2009-06-23 14:48         ` push.default??? Finn Arne Gangstad
2009-06-23 16:32           ` push.default??? Paolo Bonzini
2009-06-23 17:51             ` push.default??? Junio C Hamano
2009-06-23 17:59               ` push.default??? Junio C Hamano
2009-06-24  5:50               ` push.default??? Miles Bader
2009-06-24  6:35                 ` push.default??? Junio C Hamano
2009-06-24  8:50               ` push.default??? Paolo Bonzini
2009-06-24 21:59                 ` push.default??? Finn Arne Gangstad

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='h1nks1$vdl$1@ger.gmane.org' \
    --to=bonzini@gnu.org \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).