从当地分公司推出" master2"远程" origin2"创建一个新的远程分支" origin2 / master2"。如何让它自动推送到" origin2 / master"?
我有两个远程跟踪分支,称为
origin/master
origin2/master
我有两个本地分支机构:
master
master2
创建如下:
git checkout -b master origin/master
git checkout -b master2 origin2/master
Git告诉我它已经自动设置了本地分支来跟踪远程分支;例如:
Branch master2 set up to track remote branch master from origin2.
通过简单地使用" git pull"我对本地分支机构拉动并推送到原点/主机没有任何问题。和" git push"而在那个分支上。但是,当我在master2上时," git push"创建一个远程分支:
origin2/master2
我的配置自动生成以下条目:
branch.master.remote=origin
branch.master.merge=refs/heads/master
branch.master2.remote=origin2
branch.master2.merge=refs/heads/master
我知道我可以这样做,但我想知道是否有配置设置来解决它:
git push origin2 master2:master
输出git --version:
git version 1.8.2.1
注意:我在这里对一些名字进行了混淆,所以希望我在转置中没有犯任何错误。如果您发现任何问题,请在评论中解决,我会修复它们。
答案 0 :(得分:2)
如果你是第一次推动分支,你可以运行git push --set-upstream origin2 master2:master
。该分支将设置为跟踪origin2/master
。
您还可以设置现有分支的上游分支:
git checkout master2; git branch -u origin2/master
。这也会将跟踪分支设置为origin2/master
,任何后续git push
都会推送到origin2/master
。
有关详细信息,请参阅git's documentation about tracking branches。
答案 1 :(得分:2)
解决方案是设置:
push.default=upstream