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

Git 如何解决受保护分支上的合并冲突?,git,Git,我有一个分支是主分支的分支。如果你愿意的话,它更像是一个发行版分支。此发布分支受到保护 master ---> release 从这个版本分支中,我将我的功能从它分支出来,并将其合并到: master ---> release <--- features 在release fix中,我将从master重新设置基础,并将其向上推,使该PR的基础成为release分支。然而,当我做公关时,它说它仍然无法自动合并。这是这样做的正确方法吗?您可以从发布分支创建一个新分支(正如您所做

我有一个分支是
主分支的分支。如果你愿意的话,它更像是一个
发行版
分支。此
发布
分支受到保护

master ---> release
从这个
版本
分支中,我将我的功能从它分支出来,并将其合并到:

master ---> release <--- features

release fix
中,我将从
master
重新设置基础,并将其向上推,使该PR的基础成为
release
分支。然而,当我做公关时,它说它仍然无法自动合并。这是这样做的正确方法吗?

您可以从
发布
分支创建一个新分支(正如您所做的那样,创建
发布补丁
),合并此新分支上的“冲突”功能,解决冲突,并打开一个从新分支到
发布
分支的新拉/合并请求


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

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

  • git fetch
    #获取最新内容的副本
  • git checkout-b将发布合并到主版本/主版本-无轨道
    #从主版本创建一个新分支
  • git merge origin/release--no ff
    #在release分支中合并
  • 解决所有冲突并提交
  • push-u merge release to master
    #推出新的merge release to master分支并将其PR到master。现在它应该干净了
  • 作为旁注,是否有多人以这种方式(同时有多个发行版或修补程序分支)合并到master中?如果没有,我不确定您首先是如何将合并冲突从发布版转换到主版本的

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