我搜索了一些内容,但似乎找不到答案。
在我可以访问的两个盒子上,当我运行“git push --dry-run origin mytestbranch”时,我得到以下结果:
To git@bitbucket.org:rien/test.git
* [new branch] test -> test
然而,在我的MacBook上使用相同命令时,我得到以下结果:
To git@bitbucket.org:rien/test.git
417248a..cf7d564 test -> master
只有当我明确指定将其推送到测试远程分支时(
git push --dry-run origin test:test
),它才按预期工作。我该如何更改设置,使得基本的
git push --dry-run bb test
将推送到新创建的远程分支而不是主分支?我使用
git checkout -b test origin/master
在两个框中创建了测试分支。编辑以添加: - 两个分支都设置了
git config push.default
为tracking
。我特别想知道如何配置git,使得当我键入
git push origin test
时,它的行为与git push origin test:test
相同。
git config push.default
时,结果是tracking
。在第二个分支上,git config branch.test.merge
的结果是refs/heads/master
,而在第一个分支上没有任何结果。然而,当我尝试显式设置它时,我收到以下错误:error: the requested upstream branch 'origin/test' does not exist
。如何更改它,以便当我使用git checkout -b test origin/master
创建一个分支时,默认的git push origin test
行为是git push origin test:test
? - riengit push origin test
的默认行为与git push -u origin test:test
相同。 - rienpush.default
设置为simple
或matching
,那么git push origin test
就会按预期工作。看起来这个git版本已经弃用了tracking
push.default
,所以它无法理解它。非常感谢您的帮助。 - rientracking
并没有被弃用,它在2.2.0版本中仍然可用,现在它是upstream
的一个未记录的同义词。 - Andrew C