我最近偶然发现了一个用例,我想自动将 MR 放入我的
master
分支中。每一位 MR 都会编辑一个文档文件,该文件不会以任何方式影响业务流程或本地/远程应用程序配置。不幸的是,我需要创建一个 MR 来触发与不同存储库通信的 Webhook,而不是直接将文档文件提交到 master
。
我发现最接近“自动”的是
merge_request.merge_when_pipeline_succeeds
push 选项,它自 Git 2.10 起可用。我想知道是否有办法让我跳过管道阶段,因为就我而言,它毫无用处,只是浪费时间。我怀疑这是出于谨慎考虑而不支持的,但问一下也没什么坏处。
在GitLab 17.4(2024 年 9 月)中,如果您可以创建带有检查的 MR,那么您可以将 MR 设置为“自动合并”:
所有检查通过后自动合并
合并请求有许多必需的检查,必须通过这些检查才能合并。这些检查可以包括批准、未解决的线程、管道和其他需要满足的项目。当您负责合并代码时,可能很难跟踪所有这些事件,也很难知道何时返回并检查是否可以合并合并请求。
GitLab 现在支持自动合并来进行合并请求中的所有检查。自动合并使任何有资格合并的用户都可以将合并请求设置为自动合并,甚至在所有必需的检查都通过之前也是如此。随着合并请求继续其生命周期,合并请求会在最后一次失败检查通过后自动合并。
我们对这一改进感到非常兴奋,它可以加速您的合并请求工作流程。您可以在issue 438395中留下有关此功能的反馈。