问题: 当我的同事尝试将新的本地分支推送到存储库时,不会创建新的远程分支。相反,本地分支的提交将直接推送到主分支。
示例代码:
$ 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上,则会按预期将提交推送到分支。
我假设差异是我同事的机器上的设置或配置选项,但我无法确定罪魁祸首。希望别人之前碰到这个。如果我遗漏了任何关键信息,请告诉我。感谢。
答案 0 :(得分:1)
毫无疑问,他push.default
设置为upstream
(作为--global
配置项;从技术上讲,它也可能是--system
,但这种可能性要小得多。他可能想要使用simple
代替。请参阅the git config
documentation(在“变量”下,非常长的列表)。