如何解决受保护分支上的合并冲突?

时间:2019-12-11 20:38:53

标签: git

我有一个分支,该分支是master分支的分支。如果您愿意的话,它更多的是发行分支。此发行分支受保护。

master ---> release

从这个发行分支中,我一直在分支我的功能并将其合并到:

master ---> release <--- features

现在,一旦我的功能进入此发行版分支,就会出现合并冲突。这就是我的问题。我知道如何解决冲突(如果它不是受保护的分支),但是我不确定如何解决冲突。

我尝试做的是这样的:

master ---> release ---> release-fix

,在release-fix中,我将从master重新建立基础并将其向上推,然后将该PR的基础设为release分支。但是,当我制作PR时,它说它仍然无法自动合并。这是做这样的事情的正确方法吗?

2 个答案:

答案 0 :(得分:0)

您可以从release分支中创建一个新分支(如您所做的那样,创建release-fix),在此新分支上合并“ conflicted”功能,解决冲突并打开新的拉取/合并请求从新分支到release分支。

我不知道您提到的“自动合并”,但是我认为这是解决使用受保护分支时描述的问题的最简单方法。

答案 1 :(得分:0)

我认为有多种方法可以做到这一点,其中之一就是Dherik的答案。我通常采取相反的做法:

  1. git fetch#获取所有最新副本
  2. git checkout -b merge-release-into-master origin/master --no-track#创建一个新的master分支
  3. git merge origin/release --no-ff#在发布分支中合并
  4. 解决所有冲突并提交。
  5. push merge-release-into-master#推出新的 merge-release-into-master 分支并将其PR到 master 。现在应该干净了。

请注意,是否有多个人以这种方式合并到主服务器中(多个发行版或修补程序同时分支)?如果没有,我不确定从发行版到主版本中如何首先遇到合并冲突。