在Gitlab上启动MergeRequest时是否可以强制目标覆盖?

在Gitlab上启动MergeRequest时是否可以强制目标覆盖?,gitlab,gitlab-ci,git-merge,merge-conflict-resolution,Gitlab,Gitlab Ci,Git Merge,Merge Conflict Resolution,我正在尝试实现一个CI管道,其中开发合并到一个发布分支,而发布分支又合并到主 发布分支被命名为x.y.z,并反映发布的版本号 发布作业修改pom以创建快照版本(使用分支名称)。主作业通过删除'-SNAPSHOT',修改pom以创建发布版本。两个作业都提交并推动其更改 缺点是这会在下一次迭代中导致冲突。master上的上一次提交使其与development不同步,并且MergeRequest标记冲突。唯一的区别是pom中的版本号,很容易修复 在上图中,由于提交“创建发布版本(1.0.0)”,无法

我正在尝试实现一个CI管道,其中
开发
合并到一个发布分支,而发布分支又合并到

发布分支被命名为
x.y.z
,并反映发布的版本号

发布作业修改pom以创建快照版本(使用分支名称)。主作业通过删除'-SNAPSHOT',修改pom以创建发布版本。两个作业都提交并推动其更改

缺点是这会在下一次迭代中导致冲突。
master
上的上一次提交使其与
development
不同步,并且MergeRequest标记冲突。唯一的区别是pom中的版本号,很容易修复

在上图中,由于提交“创建发布版本(1.0.0)”,无法将
1.0.1
master
合并

我想知道(在Gitlab中)合并时是否可以强制覆盖。我可以在合并请求中强制将“他们的”替换为“我的”吗

背景

  • 这个CI过程似乎解决了谁设置pom版本的问题?这样,发布分支定义版本,快照和发布由目标分支定义
  • 这是针对web应用程序的,我希望WAR文件以发行版或快照的形式存储在Nexus中

GitLab有一个用于解决合并冲突的交互式编辑器:

您可以单击
在他们的更改或我们的更改上使用此
。但这有一个怪癖:冲突解决将在源分支中,而不是在目标分支中。这意味着,如果您将
1.0.1
合并到
master
中,并且存在冲突,它将显示为
master
合并到
1.0.1
!然后可以接受合并请求,这将导致
1.0.1
合并到
master
。这有点出乎意料,但它使分支作者能够修复冲突,即使不允许他们将修复推送到目标分支

GitLab上存在此问题:

但他们写道,目前他们没有任何推进这一进程的计划