22

如果我有许多未推送的提交分布在我的本地仓库的许多分支中,如果我输入 会发生什么git push?会推送所有这些提交还是只推送属于当前分支的提交?

4

2 回答 2

27

不,git push仅将提交从当前本地分支推送到您在命令中指定的远程分支。

可以--all通过设置参数告诉 git 推送所有分支

命令说明

于 2013-09-30T07:14:34.670 回答
16

它还取决于您的推送策略 ( git config push.default)

正如我在“ git - 推送当前与推送上游(跟踪) ”中解释的那样,只有“匹配”策略比当前分支推送更多。

push 两端同名的所有分支
这使您正在推送的存储库记住将被推出的一组分支(例如,如果您总是推送maint并且master没有其他分支,那么您推送到的存储库将具有这两个分支,而您的本地maintmaster将被推送到那里)。

使用该策略,只需一个简单git push的就足以推送所有(匹配的)分支。
如果没有该策略,git push --all则必须强制推送所有分支。

于 2013-09-30T08:53:20.740 回答