将所有本地分支推送到git中的origin

Nap*_*lux 30 git

假设我的git中有很多本地分支没有被推到远程存储库中.

如何用一个命令将它们全部推送到原点?

Fre*_*zaq 65

你有没有尝试过

git push --all -u 
Run Code Online (Sandbox Code Playgroud)

那个男人说

- 所有

而不是将每个引用命名为push,指定refs/heads /下的所有引用都被推送.

-u, - set-upstream

对于每个最新或成功推送的分支,添加上游(跟踪)参考,

-u是有用的,如果你打算从这些分支后拉

  • `$ git push origin --all`也适合我 (14认同)

gra*_*tii 10

git push <remote_name> '*:*'
Run Code Online (Sandbox Code Playgroud)

该命令很直观,因为它指定了:.左侧的一个:表示本地分支的名称,右侧的一个表示远程分支.在您的情况下,我们希望使用相同的名称进行映射,从而映射命令.

*:*告诉你想每一个地方分支推送到远程的遥控器上的同名饭桶.因此,如果您有一个名为的分支,my_branch您将拥有一个名为的远程分支<remote_name>/my_branch.

所以通常你会这样做git push origin '*:*',你会发现遥控器中的每个本地分支具有相同的名称,您可以通过git branch -r它确认将显示所有远程分支.