【问题标题】:Github actions merge specific pull requestGithub 操作合并特定的拉取请求
【发布时间】:2021-07-22 20:04:30
【问题描述】:

我需要合并以前由同一个 Github Action 打开的拉取请求,但我只需要合并那个特定的拉取请求,例如,如果 x 正在编辑功能 1 中的文件 y 并打开我没有的拉取请求'不希望那个被合并。如果 Github 操作如下例所示创建了一个拉取请求,我需要它只合并由它自己或特定拉取请求名称创建的请求。

有解决办法吗?

merge-branch:
    if: ${{ github.event.label.name == 'commit' }}
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@master
      - name: test1
        uses: devmasx/merge-branch@v1.3.1
        with:
          type: now
          from_branch: feature1
          target_branch: master
          github_token: ${{ github.token }}

【问题讨论】:

  • 你可以使用auto-approve action (github.com/hmarr/auto-approve-action) 来批准来自github-actions [bot] 的拉取请求,然后使用auto-merge 操作(github.com/pascalgn/automerge-action) 来只合并拉取请求带有特定标签或获得批准时。这里可以选择吗?
  • 感谢您的回答,不幸的是,机器人会创建多个拉取请求,我们仍然希望按名称而不是用户批准特定请求。
  • 您也可以使用if条件判断标题或前缀是否包含或等于通过github.event.pull_request.title的特定字段,然后执行您想要的操作。
  • 答案比你好! @GuiFalourd
  • 我会把它添加为官方答案,所以它也可以帮助其他人:)

标签: git github github-actions


【解决方案1】:

如果您想通过用户名批准特定 PR:

您可以使用仅批准来自 github-actions [bot] 的拉取请求的 auto-approve action,然后使用 auto-merge action 仅合并具有特定标签或获得批准的拉取请求。

如果您想按名称批准特定 PR:

您可以在工作流程中使用ifconditional 通过github.event.pull_request.title 检查标题或前缀是否包含或等于特定字段。还有这个操作 (check-pull-request-title) 可能有助于执行相同的操作。

【讨论】:

    猜你喜欢
    • 2022-06-16
    • 1970-01-01
    • 2022-08-14
    • 2020-06-25
    • 2020-10-22
    • 2016-12-11
    • 2021-08-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多