猿问

未指定分支的“git Push”的默认行为

未指定分支的“git Push”的默认行为

我使用以下命令推送到我的远程分支:

git push origin sandbox

如果我说

git push origin

这是否也推动了其他分支的更改,还是只更新了当前的分支?我有三个分支:masterproductionsandbox.

这个git push文档对此并不十分清楚,所以我想永远澄清这一点。

哪些分支和Remotes执行以下操作git push命令更新准确吗?

git push 
git push origin

origin上面是一个遥控器。

我明白git push [remote] [branch]只会把树枝推到遥控器上。


繁花不似锦
浏览 687回答 3
3回答

ITMISS

您可以通过在git配置中设置push.default来控制默认行为。push.default定义如果命令行上没有给出respec,在远程中没有配置respec,并且命令行上的任何选项都没有隐含任何respec,则定义git Push应该采取的操作。可能的价值是:nothing:不要推任何东西matching*推动所有匹配的分支两端同名的所有分支都被认为是匹配的。这曾经是默认的,但从Git2.0开始就没有了(simple是新的默认值)。upstream:将当前分支推到其上游分支(tracking是上游的同义词)current*将当前分支推送到同名分支simple*(Git 1.7.11中的新名称)与上游类似,但如果上游分支的名称与当地分支不同,则拒绝推进这是最安全的选择,非常适合初学者。此模式已成为Git2.0中的默认模式。简单的、当前的和上游的模式都适用于那些想在完成工作后推出一个分支的人,即使其他分支还没有准备好被推开。命令行示例:若要查看当前配置,请执行以下操作:git config --global push.default若要设置新配置,请执行以下操作:git config --global push.default current

牛魔王的故事

git push origin将所有更改推到具有匹配远程分支的本地分支上。origin至于git push就像git push <remote>,在哪里<remote>当前分支的远程(如果没有为当前分支配置Remote),则为源。
随时随地看视频慕课网APP
我要回答