如何配置GitHub公开仓库:仅指定人员可推送及发起PR
公开GitHub仓库权限管控方案(仅允许指定人员推送/合并PR)
核心解决步骤:设置分支保护规则
这是阻止非授权人员直接推送代码的关键,默认公开仓库的主分支没有权限限制,按以下步骤配置:
- 打开目标GitHub仓库,进入「Settings」→「Branches」页面
- 点击「Add rule」,在「Branch name pattern」中填入需要保护的分支名(比如
master或main) - 勾选并配置以下必选选项:
- Require a pull request before merging:强制所有代码修改必须通过Pull Request合并,禁止直接推送分支
- Restrict who can push to matching branches:添加你和合作朋友的GitHub账号,仅这些人拥有直接推送分支的权限(若不需要直接推送,可仅保留PR强制规则)
- Require approvals:设置至少1位指定人员的审批才能合并PR,确保只有你们能确认代码合并
- 可选:勾选「Dismiss stale pull request approvals when new commits are pushed」,避免旧审批失效的情况
额外版权保障措施
- 在仓库根目录添加
LICENSE文件,明确声明项目版权归你和团队所有,禁止未经授权的代码提交与合并 - 在
README中补充说明:本项目仅接受指定合作者的代码贡献,外部提交的PR将不会被采纳
测试问题原因说明
你用备用账号能直接推送到master分支,是因为当前分支未设置任何保护规则,且备用账号可能通过本地存储的主账号凭据(如GitHub密码/令牌)完成了推送。设置分支保护后,非指定账号将无法直接推送,必须走PR流程。
内容的提问来源于stack exchange,提问作者Bebzon123
相关产品推荐
相关产品推荐

