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

GitHub Enterprise:无SQL新提交时保留DBA的PR审批

解决GitHub Enterprise无SQL提交时保留DBA审批的配置方法

核心逻辑

GitHub默认会在PR有新提交时标记所有已有审批为“陈旧”,但我们可以通过分支规则的精细化配置,让只有当SQL文件发生变更时,才触发DBA审批的失效;无SQL变更的提交则保留DBA的原有审批。

具体操作步骤

1. 修改受保护分支的审批规则

打开仓库的设置页面,进入「Branches」→「Protected branches」,找到你要配置的目标分支(比如main),点击「Edit」按钮:

  • 确认已勾选「Require approvals from code owners」
  • 重点:不要勾选全局的「Dismiss stale pull request approvals when new commits are pushed」,转而使用下方的「Dismiss stale approvals for specific paths」来做精准控制

2. 添加SQL文件专属的陈旧审批规则

在「Dismiss stale approvals for specific paths」区域,点击「Add path」:

  • 输入*.sql(如果你的SQL文件集中在特定目录,就写src/sql/*.sql这类精准路径)
  • 选择对应的DBA团队作为该路径的CODEOWNER
  • 这样设置后,只有当PR中*.sql文件有新改动时,DBA的旧审批才会被标记为陈旧;没有SQL变更的提交,DBA的审批会一直有效

3. 确认CODEOWNERS文件配置正确

确保仓库.github/CODEOWNERS文件的规则无误:

*.sql @your-dba-team-name
* @your-non-dba-dev-team-name

这里的@your-dba-team-name要替换成你实际的DBA团队标识,非SQL文件的规则保持不变。

注意事项

  • 这个配置对设置之后的新提交生效,已经变成陈旧的审批需要重新走一次,之后再推无SQL的提交就会保留DBA审批
  • 如果需要对非SQL变更也做类似的保留审批设置,同样可以添加对应的路径规则,比如针对*.js设置只在JS文件变更时失效前端团队的审批

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 08:42:39