在Gitlab上启动MergeRequest时是否可以强制目标覆盖?
我正在尝试实现一个CI管道,其中在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)”,无法
开发
合并到一个发布分支,而发布分支又合并到主
发布分支被命名为x.y.z
,并反映发布的版本号
发布作业修改pom以创建快照版本(使用分支名称)。主作业通过删除'-SNAPSHOT',修改pom以创建发布版本。两个作业都提交并推动其更改
缺点是这会在下一次迭代中导致冲突。master
上的上一次提交使其与development
不同步,并且MergeRequest标记冲突。唯一的区别是pom中的版本号,很容易修复
在上图中,由于提交“创建发布版本(1.0.0)”,无法将1.0.1
与master
合并
我想知道(在Gitlab中)合并时是否可以强制覆盖。我可以在合并请求中强制将“他们的”替换为“我的”吗
背景
- 这个CI过程似乎解决了谁设置pom版本的问题?这样,发布分支定义版本,快照和发布由目标分支定义李>
- 这是针对web应用程序的,我希望WAR文件以发行版或快照的形式存储在Nexus中
在他们的更改或我们的更改上使用此
。但这有一个怪癖:冲突解决将在源分支中,而不是在目标分支中。这意味着,如果您将1.0.1
合并到master
中,并且存在冲突,它将显示为master
合并到1.0.1
!然后可以接受合并请求,这将导致1.0.1
合并到master
。这有点出乎意料,但它使分支作者能够修复冲突,即使不允许他们将修复推送到目标分支
GitLab上存在此问题:
但他们写道,目前他们没有任何推进这一进程的计划