git push origin master和git push之间的区别是什么?

12

这两个命令有什么区别?

git push origin mastergit push

当我使用第一个命令 (git push origin master) 时,它会将它发送2次到上游,而只使用 git push 就会发送1次。

是否有人可以解释一下为什么会发生这种情况?


3
你的意思是,它会将数据“发送2次”到上游?你看到了什么? - Thomas Stringer
1个回答

8
通过不指定仓库参数来使用$ git push,默认情况下它会将当前分支推送到追踪的远程分支。
当您指定$ git push origin时,您在明确将更改推送到origin远程仓库。
至于您关于将其“2倍”发送到上游的问题,这不应该是行为。它只会将更改单次推送到上游存储库。
有关git-push的文档,请查看git-push文档 当你执行没有参数的$ git push命令时,Git实际上会非常详细地列出它将要执行的操作:
warning: push.default is unset; its implicit value has changed in
Git 2.0 from 'matching' to 'simple'. To squelch this message
and maintain the traditional behavior, use:

  git config --global push.default matching

To squelch this message and adopt the new behavior now, use:

  git config --global push.default simple

When push.default is set to 'matching', git will push local branches
to the remote branches that already exist with the same name.

Since Git 2.0, Git defaults to the more conservative 'simple'
behavior, which only pushes the current branch to the corresponding
remote branch that 'git pull' uses to update the current branch.

See 'git help config' and search for 'push.default' for further information.
(the 'simple' mode was introduced in Git 1.7.11. Use the similar mode
'current' instead of 'simple' if you sometimes use older versions of Git)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接