Re: possible bug when pushing with multiple remote repos.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Oct 22, 2010 at 11:12 AM, Arnaud Mouiche
<arnaud.mouiche@xxxxxxxxxxx> wrote:
> Hi,
>
> I found a behavior which is, at least, different from what "git help
> push" seems to declare.
> basically:
> - if I have 2 remotes : 'origin' and 'remote_B'
> - if I checkout with tracking a branch of 'remote_B'
> - if I do "git push remote" or "git push" or "git push -repo=remote_B"
> then git try to push all my branches of "origin" to remote_B.
>
> I check with latest git 1.7.3.2, and the issue is still here.
>
> strangely:
> - git checkout master
> - git push  =>  this is OK, and doesn't try to push any remote_B
> references to origin.
>
> I found this is particularity error prone as origin/master can be a fast
> forward of remote_B/master, and in this case nobody will complains..
> (that's what happened to me ;-) )

This is because "git push" pushes matching branches by default if you
don't specify the refspec. From the git push manpage:

       <refspec>...
...
           The special refspec : (or +: to allow non-fast-forward updates)
           directs git to push "matching" branches: for every branch that
           exists on the local side, the remote side is updated if a branch of
           the same name already exists on the remote side. This is the
           default operation mode 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).

It may be worth pointing this out in the description.

(I hope the scissor patch is well formated, and the mua doesn't mangle it)
-----8<-----
Doc: git-push: Specify the default mode in the description

Signed-off-by: Santi Béjar <santi@xxxxxxxxxxx>
---
 Documentation/git-push.txt |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/Documentation/git-push.txt b/Documentation/git-push.txt
index e11660a..9a2a93e 100644
--- a/Documentation/git-push.txt
+++ b/Documentation/git-push.txt
@@ -23,6 +23,8 @@ You can make interesting things happen to a repository
 every time you push into it, by setting up 'hooks' there.  See
 documentation for linkgit:git-receive-pack[1].

+The default operation mode if no explicit refspec is found is
+to push "matching" branches, see below.

 OPTIONS[[OPTIONS]]
 ------------------
-- 
1.7.3.rc1.227.gee5c7b
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]