GitHub受保护master分支如何设置仅PR作者或管理员可合并?
GitHub master分支保护规则配置方案
需求1:强制所有贡献者评审通过+管理员可绕过规则
- 进入目标仓库的
Settings→Branches页面,找到Branch protection rules模块后点击Add rule - 在
Branch name pattern输入框填写master,匹配要保护的目标分支 - 勾选
Require a pull request before merging选项,在子配置中按需开启:- 勾选
Require approvals,审批人数设置为需要参与评审的贡献者总数,如果评审人员固定,建议同步配置CODEOWNERS文件并勾选Require review from Code Owners,确保所有指定评审人必须完成审批 - 勾选
Dismiss stale pull request approvals when new commits are pushed,避免PR更新后旧的审批结果仍生效
- 勾选
- 找到
Allow specified actors to bypass required pull requests配置项,将团队管理员添加到豁免名单,管理员可在特殊场景下直接绕过评审规则合并代码 - 关闭普通成员的规则绕过权限,确保非管理员用户无法跳过审批要求合并代码
需求2:仅PR作者或管理员拥有合并权限
- 按照上述路径进入master分支保护规则新增页面
- 完成
Require a pull request before merging与对应审批人数的基础配置,保证合并前必须满足评审要求 - 勾选
Restrict who can push to matching branches选项,仅将Administrators角色添加到可推送/合并的白名单中 - 配置完成后,仅满足评审要求的PR作者、仓库管理员可以执行合并操作,其他普通成员即使评审通过也无法合并他人提交的PR
- 若需要更精细化的权限控制,可搭配GitHub Rulesets功能,进一步限定合并操作的触发主体范围
配置效果说明
两种方案均会默认拦截所有未完成评审的合并操作,完全避免普通成员误合并的问题。遇到评审人休假等特殊场景时,管理员可直接在对应PR页面点击
Bypass rules选项跳过规则合并,无需修改全局配置。
内容的提问来源于stack exchange,提问作者Peck3277
相关产品推荐
相关产品推荐

