Git:如何将一个远程分支合并到另一个远程分支?

时间:2014-04-28 08:33:59

标签: git

我想知道如何将一个远程分支合并到另一个远程分支,并在合并应用后立即删除一个远程分支。

此致,Alexander Chernyaev。

3 个答案:

答案 0 :(得分:6)

根据我的理解,您有一个远程 foo ,包含 branch_1 branch_2 。 首先,我们不能进行远程合并操作。 我们必须跟踪远程存储库,在本地执行我们想要的操作(例如合并分支),然后将新快照推送到服务器。

即:

  • git clone [repo_adress]

你在主分支上。

  • 然后,您可以签出或创建其他分支,并在其中完成您的工作。

现在假设我们有两个分支 branch_1 branch_2 。您希望将branch_1合并到branch_2,然后删除branch_1

您结帐到branch_2,然后将branch_1与它合并:

$ git checkout branch_2 $ git merge branch_1

从那里要么合并顺利要么你有冲突。 合并完成后,您可以删除合并的分支,即 branch_1

$ git branch -d branch_1

然后推动你的工作。

$ git push

如果branch_2不存在于遥控器上,您必须创建它:

$ git push -u foo branch_2

请注意,在本地删除branch_1并不会​​远程删除它(考虑到它存在于遥控器上)。 为此,我们将对git说:" 什么都不推送到我要删除的分支"即:

$ git push remote_name :branch_name

读取像 git remote push remote_name" nothing&#34 ;:branch_name。

现在有任何意思自动完成吗?

我不知道(虽然我会调查合并后的问题" git hook"),但我不确定我们应该希望它。删除远程分支有点危险。手动这样做是确保我们正在做的事情的好方法。

答案 1 :(得分:2)

您可以使用以下命令

切换到要合并另一个分支的跟踪分支(代表远程分支的本地分支)。
git checkout origin/name_of_your_branch

在那之后合并另一个远程分支

git merge origin/brach_name_you_wanted_to_merge

此后,如果发生任何冲突,请解决。然后提交并推送。

,现在checkout到您的本地分支机构。通过以下命令

git checkout name_of_your_brnach

之后,使用git pull命令拉出原点。就是这样。

答案 2 :(得分:0)

您可以将它们拉到当地。合并并推动它。要删除此后的冗余分支,只需运行

git push origin :<branch_to_delete>

例如,如果要删除分支A

git push origin :A