如何让Dependabot在多GitHub必填审批人要求下自动合并PR?
解决Dependabot PR绕过双审批人要求并保留CI验证的方案
方法一:利用分支保护规则的「例外」设置(推荐)
这是最直接的原生解决方案,无需额外维护Workflow:
- 进入仓库「设置」→「分支保护规则」,找到目标分支的保护规则
- 滚动到「绕过拉取请求审批要求」区域,添加
dependabot[bot]用户 - 若仓库开启了「要求代码所有者审核」,在「绕过代码所有者审核要求」区域也添加
dependabot[bot] - 配置完成后,Dependabot发起的PR会自动跳过双审批人要求,但所有必填CI工作流的验证仍会强制执行,完全匹配你的需求
方法二:用GitHub Actions自动完成双审批(备选)
如果无法修改分支保护规则,可通过自定义Workflow让Dependabot的PR自动获得两次审批:
- 基于官方审批Workflow扩展,示例代码如下:
name: Auto-Approve Dependabot PRs on: pull_request_target permissions: pull-requests: write jobs: double-approve: runs-on: ubuntu-latest if: github.actor == 'dependabot[bot]' steps: # 第一次审批 - name: First approval uses: hmarr/auto-approve-action@v3 with: github-token: ${{ secrets.GITHUB_TOKEN }} # 第二次审批(调用GitHub API完成) - name: Second approval uses: actions/github-script@v6 with: script: | github.rest.pulls.createReview({ owner: context.repo.owner, repo: context.repo.repo, pull_number: context.issue.number, event: 'APPROVE' })
- 注意:执行该Workflow的账号必须拥有仓库审批权限;若开启代码所有者审核,需额外配置CODEOWNERS文件或让机器人账号成为代码所有者
补充说明
优先选择方法一,它是GitHub原生支持的功能,无需额外维护,稳定性更高。方法二仅适合无法修改分支保护规则的场景,需确保机器人账号权限配置正确。
内容的提问来源于stack exchange,提问作者ajbrun
相关产品推荐
相关产品推荐

