You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在GitHub上配置分支命名规范,拦截不符合规则的分支合并?

GitHub设置分支命名规范,阻止不合规分支合并到Master

正确做法:用GitHub原生的仓库规则(Repository Rules)

之前试的分支保护、Webhooks都不对路,GitHub现在有专门的仓库规则可以直接限制PR源分支的命名,步骤如下:

1. 进入规则设置页面

  • 打开你的仓库,点顶部导航栏的 Settings(设置)
  • 左侧菜单栏找 Code and automation 下的 Rules,选 Rulesets

2. 新建规则集

  • 点 Create ruleset,给规则集起个名字(比如「PR源分支命名校验」)
  • 在「Target branches」里选master——这样只有合并到master的PR会触发这个规则
  • 保持「Active」状态勾选,确保规则生效

3. 添加分支命名校验规则

  • 在「Rules」区域点 Add rule,选「Pull request」分类下的 Require pull request head branch name to match a pattern
  • 输入正则表达式:^TEST-[0-9]{4}(你原来的表达式多了个冒号,分支名不会带这个,得去掉;如果分支是TEST-1234-feature这种带后缀的,这个表达式也能匹配前缀)
  • 规则执行方式选 Block,直接阻止不合规的PR合并

4. 保存规则

  • 确认所有设置没问题,点 Create ruleset 保存即可

注意事项

  • 必须用管理员账号操作,普通权限没资格创建规则集
  • 正则表达式要准确:如果分支名是TEST-1234或者TEST-1234-xxx,^TEST-[0-9]{4}都能匹配前缀,完全符合你的需求
  • 规则只针对合并到master的PR,其他分支不受影响

为啥之前的方法没用?

  • 分支保护:只能管目标分支(比如master)的推送权限、PR审核要求,没法校验PR的源分支命名
  • Webhooks:得自己写后端服务接收事件、校验分支名再调用API阻止合并,麻烦还容易出问题,远不如原生规则靠谱

内容的提问来源于stack exchange,提问作者derirative23

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 22:15:28