GitLab中的自动合并请求

时间:2020-08-21 10:51:27

标签: git jenkins gitlab gitlab-ci

我的GitLab安装在其中一台服务器中。 多个开发人员在其分支机构中开发源代码,并将源代码从其本地计算机推送到GitLab。以后,开发人员将登录到GitLab帐户,并向默认分支创建合并请求。

现在,当开发人员将其代码从其本地计算机推送到GitLab时,如何实现对默认分支的自动合并请求。

1 个答案:

答案 0 :(得分:2)

不幸的是,GitLab上没有自动创建合并请求的功能。例如,您必须使用bash或python脚本自己创建它们。我通常只是在每个管道的开始运行的create_merge_request阶段中调用setup作业。步骤如下:

  1. 阅读所有打开的合并请求的列表
  2. 计算有多少个打开的MR映射到源分支
  3. 如果没有打开的MR,请使用所需的默认设置创建一个

如@mnestorov所述,here提供了一个开放源代码版本,可以在bash脚本中执行这些步骤。我认为您需要在GitLab变量部分中创建的唯一变量是GITLAB_PRIVATE_TOKEN并输入您的GitLab API令牌。有关如何创建令牌的说明,请参见Personal Access Tokens。您也可以尝试更新脚本以使用预定义的CI_JOB_TOKEN变量,但不确定是否可以使用。试试吧,让我们知道!

或者,您可以使用GitLab API编写Python脚本,但您可能必须自己编写。您可以在How to create a merge request at the end of a successful pipeline in Gitlab?上找到一些信息。

相关问题