我的理解是,在决定要推送什么远程时,Git使用(按优先级顺序)1)作为命令参数提供的远程和refspec,2)推送分支的branch.<name>.pushRemote
配置来自,3)remote.pushDefault
配置适用于所有分支(并且是我希望在这种情况下使用的配置,以及4)Git在您克隆时自动为您设置的branch.<name>.remote
配置存储库。
请参阅https://git-scm.com/docs/git-config
我已经从我没有写入权限的中央存储库(&#34; origin&#34;)克隆了我的存储库,使用git remote add指向我自己的公共存储库,我有写入权限(&#34;提交&#34;)。我试图将remote.pushDefault和branch.develop.pushRemote设置为我的&#34;提交&#34;存储库,但每当我输入git push时,它都会尝试推送到中央存储库&#34; origin&#34;。
在Centos 6.7上使用git版本1.7.1
这是我的配置文件:
以下是证据:
答案 0 :(得分:1)
你有一个问题,因为CentOS远远落后于现代版本的git。下面引用的文字来自发行说明(Documentation/RelNotes/*
文件)。
branch.branch.pushRemote
和remote.pushDefault
都是git 1.8.3中的新功能:
- 三角形从一个地方拉出来,推到另一个地方&#34;工作流程 新
remote.pushdefault
更好地支持(覆盖 &#34;来源&#34;事情)和branch.*.pushremote
(覆盖了branch.*.remote
)配置变量。
在git 1.9.1:
之前,新功能的处理仍然有所不同
- &#34; git push&#34;没有注意
branch.*.pushremote
如果是的话 早于remote.pushdefault
定义;这两个的顺序 配置文件中的变量无关紧要,但确实如此 错误的。
显然,第1项比第2项重要得多,因为发行说明提供了解决方法(事实上,您的配置已经按照必要的顺序进行了配置,当然两者都设置为相同的值)。
你需要将git升级到至少1.8.3(尽管你没有理由不跳到2.5+,只要你记下2.0中的界面变化)。 / p>