【发布时间】:2015-12-08 02:19:08
【问题描述】:
这两个命令有什么区别。
git push origin master 和 git push
当我使用第一个 (git push origin master) 时,它以某种方式将其发送 2 次到上游,而仅使用git push 它发送 1 次。
这里有谁能解释为什么会发生这种情况?
【问题讨论】:
-
你是什么意思,它“发送 2x”到上游?你在看什么?
标签: git
这两个命令有什么区别。
git push origin master 和 git push
当我使用第一个 (git push origin master) 时,它以某种方式将其发送 2 次到上游,而仅使用git push 它发送 1 次。
这里有谁能解释为什么会发生这种情况?
【问题讨论】:
标签: git
通过指定 $ git push 不带存储库参数,默认情况下它将当前分支推送到跟踪远程分支。
当您指定 $ git push origin 时,您将明确地将您的更改推送到 origin 远程存储库。
至于您关于将其“2x”发送到上游的问题,这不应该是这种行为。它会将更改一次推送到上游存储库。
当您执行不带参数的$ 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)
【讨论】: