【问题标题】:How to push 2 branches from local to remote repo in git?如何在 git 中将 2 个分支从本地推送到远程仓库?
【发布时间】:2013-01-04 02:35:35
【问题描述】:

我在本地有 2 家分店,例如:

  • FirstApp
  • 第二个应用程序

如何将它们都推送到远程仓库?我还需要在远程创建两个分支吗?

非常感谢!

【问题讨论】:

  • 这不是默认行为吗? git push origin(假设您的远程被称为 origin)将在所有本地分支中推送任何未同步的提交。
  • 嗯是吗?我不敢尝试,因为repo很重要。

标签: git


【解决方案1】:

您可以通过执行以下命令来做到这一点。

git push [远程名称] [branch1] [branch2]

例如如果你想要两个把分支FirstApp和分支SecondApp放到远程源,你可以执行

git push origin FirstApp SecondApp

如果要推送更多分支,只需将需要推送的分支名称添加到末尾即可。

有关 git 的更多信息。您可以通过以下链接查看这本书 - http://git-scm.com/book

【讨论】:

  • 顺便说一句,如果有人克隆 repo,那么两个分支都会被拉到本地对吗?顺便说一句,拉动活动怎么样?
  • 感谢您的电子书,我在 git 上工作了很长时间,但从未在本地和远程两个分支上工作过。
  • 是的,在这种情况下,它们都将被提取到本地仓库。但实际上所有分支都会被提取。
  • 我已经尝试在 master 中推送它,但似乎提交被推送但不是远程的,因为我已经重新克隆它并通过“git checkout - 签出到分支” b remotes/origin/FirstApp”,但曲目列表中没有我的提交 :(
  • 哎呀,我已经使用 git show 检查了它,有我的提交,但它没有出现在我的本地,你知道如何在我的本地查看它吗?
【解决方案2】:

随着default push policy 的最近变化,我建议:

 git push -u origin FirstApp
 git push -u origin SecondApp

这样,即使使用新的“简单”策略,它也会推送并创建一个以本地分支命名的上游分支。

现在请记住,如果您克隆回远程存储库,它将不会为所有远程分支创建本地分支:请参阅“Track all remote git branches as local branches”。

要查看您的分支是否在新克隆后被推送,请查看以下结果:

git branch -a

【讨论】:

【解决方案3】:

现在我使用 SourceTree 来帮助管理我的本地存储库。

它有助于通过以下方式推送所有尚未在 repo 中创建的本地分支:

  • 按下顶部栏上的按钮
  • 检查每个尚未推送到远程的分支的 Push 和 Track 列
  • 按确定按钮

【讨论】:

  • 当然,但即使没有 SourceTree,我的回答仍然有效。
  • 是的@VonC,只是我从未尝试过,因为已经迁移到使用 SourceTree 而不是命令行 lol
猜你喜欢
  • 1970-01-01
  • 2013-02-21
  • 1970-01-01
  • 2016-10-25
  • 2012-01-05
  • 2019-03-17
  • 2015-08-29
  • 2021-04-07
  • 1970-01-01
相关资源
最近更新 更多