Git推送新的本地分支更新master而不是创建新的远程分支

时间:2014-08-26 04:03:41

标签: git github git-push

问题: 当我的同事尝试将新的本地分支推送到存储库时,不会创建新的远程分支。相反,本地分支的提交将直接推送到主分支。

示例代码:

$ git checkout -b newBranch origin/master
<make change to file>
$ git commit -am"newBranch commit message"
$ git push origin newBranch

而不是以

结尾的预期消息
* [new branch]      newBranch -> newBranch

我的同事收到一条以此结尾的消息

deee5b8..756bf15  newBranch -> master

我在我的机器上测试了这个确切的过程,它按预期工作;推送后在存储库中创建了一个新的远程分支。

这种行为在多个存储库中是可重复的,并且每次他尝试将新分支推送到repo时都会发生。如果分支已存在于repo上,则会按预期将提交推送到分支。

我假设差异是我同事的机器上的设置或配置选项,但我无法确定罪魁祸首。希望别人之前碰到这个。如果我遗漏了任何关键信息,请告诉我。感谢。

1 个答案:

答案 0 :(得分:1)

毫无疑问,他push.default设置为upstream(作为--global配置项;从技术上讲,它也可能是--system,但这种可能性要小得多。他可能想要使用simple代替。请参阅the git config documentation(在“变量”下,非常长的列表)。