Re: git push (mis ?)behavior
- From
Steffen Prohaska <prohaska@zib.de>
- Date
- Sep 28, 2007, 06:52 UTC
- Message-ID
- <9D61974D-E08D-49F6-9C88-6BE446D53C74@zib.de>
- In-Reply-To
- <7v3awzvrpr.fsf@gitster.siamese.dyndns.org>
On Sep 27, 2007, at 9:22 PM, Junio C Hamano wrote:
Show 17 quoted lines
> > So what's the desired semantics? > > The current semantics is: > > "git push" says "you do not say to which repository?" and > consults "branch.<current>.remote" but defaults to 'origin' > if unconfigured. > > "git push <name>" (or using the <name> determined as above) > says "you do not say which branches?" and consults > "remote.<name>.push" to find branches to push out, but > defaults to 'matching branches' if unconfigured. > > What you would want to change is the fallback behaviour for > unconfigured "remote.<name>.push". I think it is sensible to > have an option to make it push only the current branch.
I'm not sure that changing the fallback behaviour for unconfigured "remote.<name>.push" is sufficient.
When "remote.<name>.push" is set I'd expect "git push" to choose only the 'right' remote.<name>.push lines, that is the lines that have the current branch as the local ref. "git push" would only push the current branch, which could be pushed to 0 or more branches on the remote side. If no "remote.<name>.push" contains the current branch as a local ref nothing would happen (maybe a warning?). If several "remote.<name>.push" have the current branch as the local ref the branch would be pushed to several remote branches. But other branches than the current branch would _never_ be pushed if no argument is given to 'git push'.
Steffen