如何在DevOps中为指定团队创建Pull Request设置必填审核人?
我之前在团队里正好落地过这个需求,针对外部贡献者的PR强制指定审核人,不同代码托管平台的实现方式略有不同,给你整理下常用的方案:
GitHub 配置步骤
- 首先进入仓库的「Settings」→「Branches」页面
- 找到「Branch protection rules」,点击「Add rule」
- 填写需要管控的分支名(比如
main或master) - 勾选「Require a pull request before merging」,确保所有合并必须走PR流程
- 勾选「Require approvals」,设置必填的审核人数,还可以开启「Require review from Code Owners」选项,结合
CODEOWNERS文件指定专属审核人 - 创建
.github/CODEOWNERS文件,比如要让@your-internal-team成为全仓库的必填审核人,就写:
这样外部贡献者提交的PR会自动要求该团队成员审核,且必须通过才能合并* @your-internal-team
GitLab 配置步骤
- 进入仓库「Settings」→「Repository」→「Protected branches」
- 选择要保护的分支,将「Allowed to merge」和「Allowed to push」权限仅限内部团队成员,外部贡献者设为「Guest」或「Reporter」(只能提交PR无法直接合并)
- 接着到「Settings」→「Merge requests」→「Approval rules」
- 添加新的审批规则,设置「Required approvals」数量,在「Approvers」里选择你指定的团队成员
- 建议勾选「Remove approvals when commits are added」,确保PR有新提交时重新触发审核要求
Azure DevOps 配置步骤
- 进入项目的「Repos」→「Branches」页面
- 右键目标分支,选择「Branch policies」
- 启用「Require a minimum number of reviewers」,设置必填审核人数,然后在「Required reviewers」里添加指定的团队或成员
- 同时确保外部贡献者的权限仅为「Contributor」,没有直接合并分支的权限,必须通过PR走审核流程
额外注意事项
- 所有平台都默认禁止PR提交者自己审核,这个规则可以确保审核的独立性
- 如果需要针对不同代码路径设置不同的审核人,可以在
CODEOWNERS(GitHub)或GitLab的审批规则里按路径配置 - 配置完后一定要用外部账号提交测试PR,验证是否确实强制要求指定审核人通过才能合并
内容的提问来源于stack exchange,提问作者Vasilievski




