如何将分支合并到master后面的master中?

时间:2020-02-07 21:42:38

标签: git gitlab

这里是情况:

我们有一个正常工作的主分支(M)

我们创建了master分支并进行了更改(A)

我们将A合并为master(M2)

A遇到了一些问题,所以我们打破了主人

我们还原了母版,导致M3与M

相同

我们在A分支上进行了更改,导致A2。

我们希望将A2合并到主服务器中,但由于A2在主服务器(M3)之后有多个提交,因此我们无法合并。

我们基本上想成为A2母版,但是现在我们看到的唯一途径是将在A和A2中所做的所有更改重新制作为新的母版分支。

如果正在使用GitLab,这有助于提供简单的解决方案。

1 个答案:

答案 0 :(得分:0)

通常不作任何承诺都是没有问题的。 您可以简单地检出主git checkout master, 然后将A2合并到主git merge A2中。如果存在合并冲突,则需要先解决这些冲突,然后再完成合并。

另一种选择是在将A2合并到母版之前,用母版中的更改更新A2。 您将首先检出A2,然后检出git merge mastergit rebase master,解决冲突(如果有),然后检出母版并将A2(如果需要,则将A3合并)到母版中。

编辑
如果您真的想成为A2母版,则可以通过签出母版git reset --hard A2并强行推动git push --force-with-lease来做到这一点。 但是,通常不建议这样做,因为您将更改母版的历史记录。如果您独自在一台计算机上工作,那会没事的,但是如果您是多个开发人员,则可能会导致问题。

编辑2
我从下面的评论中意识到,原始内容与A有所不同 不会包含在合并中。

将还原提交母版或樱桃拣选A还原为母版 解决这个问题。