【问题标题】:Push commit to 2 different remote branches?将提交推送到 2 个不同的远程分支?
【发布时间】:2013-04-10 22:25:50
【问题描述】:

我有两个远程分支,分支 A 和分支 B。

考虑我签出分支 A、提交并推送的情况。现在,我想将相同的提交推送到分支 B。这两个分支完全不同,所以我不能使用 rebase,可以吗?因为如果我执行git rebase,那么我会将所有更改从一个分支重新定位到另一个分支,但我只需要一次提交即可。我该怎么做?

PS。现在我用一种愚蠢的方式来做:我检查分支 B,从分支 A 中挑选最后一次提交,然后推送到 B(远程)。这样我不喜欢我需要切换到分支B。

【问题讨论】:

  • 我相信你可以做一个 git merge branch b 一段时间仍然保留分支 b?
  • 如果你只需要“复制”一个提交,我不觉得摘樱桃很愚蠢。
  • 请确认您指的是 2 个不同的远程分支,而不是 2 个不同的远程存储库。
  • @MichaelDurrant 本质上,我的意思是两个不同的远程存储库。

标签: git git-push git-remote


【解决方案1】:

这就是git cherry-pick 的用途。由于您的分支彼此非常不同,并且您不想 mergerebase 因为它只是一个提交,所以这是一个选项。

【讨论】:

    【解决方案2】:

    如果你说的是两个不同的存储库,那么我认为你想要的是多个遥控器。

    您可以随时使用git add remote abc git@github.com:msh/your_app_name.git添加新遥控器

    然后你可以通过 git push 将 master 推送到它,例如

    git push abc master
    

    通常,在 github 中,您使用 'origin' 作为初始遥控器,因此通常使用 git push origin master(通常缩写为 git push origin 或只是 git push ,但是您可以随意添加其他遥控器并推送给它们使用git push [repo_name] [branch_name]。如果您有多个遥控器,您应该在推送时始终指定哪一个。

    【讨论】:

      猜你喜欢
      • 2013-05-03
      • 2011-03-13
      • 2020-05-22
      • 1970-01-01
      • 2020-02-05
      • 2015-07-24
      • 2013-08-01
      • 2018-10-02
      • 2015-04-02
      相关资源
      最近更新 更多