【问题标题】:Using gitlab cicd to automatically merge branches使用gitlab cicd自动合并分支
【发布时间】:2020-02-04 00:14:46
【问题描述】:

gitlab 具有此功能,您可以使用管道在您将代码推送到项目时执行代码。 这是通过他们的 .gitlab-ci.yml 文件格式完成的

我正在尝试以某种方式使管道合并所有带有前缀“ready/”的分支 我已经编写了一个 python 程序来在本地执行它,但它不会在 gitlab docker 远程机器上执行。这是因为它只将“* 和 master”列为带有“git branch -a”的分支。

我已经尝试结帐到master,但是那个dosent工作。

这甚至可以在 gitlab 管道上实现吗?我将如何前进?

【问题讨论】:

    标签: python git continuous-integration gitlab


    【解决方案1】:
    推荐的答案 GitLab

    有几种方法可以实现这一点,具体取决于您要使用什么凭据、您喜欢什么以及更适合您的用例。

    1. 使用SSH in CI/CD(带有 SSH 密钥)使用标准 git 命令来拉取、执行任何操作,然后作为管道作业的一部分推送到存储库。
    2. 使用需要personal access tokenmerge requests API。 API 允许您创建、接受和合并合并请求。

    如果你有很多分支,那么你可能想使用第一种方法。

    【讨论】:

    • 我希望这会自动发生。 ssh 选项需要外部计算机在 ssh 连接内运行命令?并且 dosent api 选项需要所有分支的合并请求?
    • 如果您查看文档链接,我链接到的链接专门介绍了如何在 CI/CD 中使用 SSH,以便您可以在脚本中运行所需的任何 git 命令。我已经编辑了我的答案,希望它更清楚。至于 MR 选项,是的,它确实如此,这就是为什么我注意到如果你有很多分支,你最好使用 SSH 方法。
    猜你喜欢
    • 2019-06-30
    • 2019-04-09
    • 2020-09-15
    • 1970-01-01
    • 2020-04-30
    • 1970-01-01
    • 2021-12-24
    • 2021-02-10
    • 1970-01-01
    相关资源
    最近更新 更多