首页/开发/Git 与协作速查/GitLab CODEOWNERS 与代码所有者
协作与代码评审75 条

GitLab CODEOWNERS 与代码所有者

GitLab 同样支持 CODEOWNERS 文件定义代码所有者,并可将其接入审批规则与受保护分支,实现按目录强制审批。

Git 与协作速查开发更新于 2026-10-13

代码所有者是什么

GitLab 同样支持用代码所有者文件声明目录负责人,并能把它接入审批规则与受保护分支,实现按目录的强制审批。相比在审批规则里逐个写路径,代码所有者文件把归属关系集中在一处,目录调整时只需要改一个文件。

基本信息

文件位置仓库根目录、docs/ 或 .gitlab/ 目录下的代码所有者文件
语法路径模式后跟 @用户 或 @组路径
规则段可以用方括号名称组织条目
联动机制在受保护分支的审批规则里启用代码所有者审批

典型使用场景

  • 认证、支付、基础设施等敏感目录强制对应团队审批
  • 文档目录交给文档组负责
  • 后端与前端按目录划分责任人
  • 组织调整时集中修改归属关系
  • 与审批规则组合,实现按路径的分级审批

文件示例

文件示例
# 语法与 GitHub 类似,注意组路径含命名空间
[Backend]
src/api/ @mygroup/backend-team
*.md @mygroup/docs-team

配置要点

项内容注意
文件位置仓库根或其他指定目录存在多个位置时以平台规则为准
路径模式目录或通配写法书写顺序会影响匹配
负责人用户或组路径组路径需要带命名空间
启用代码所有者审批之后,未获得对应所有者的批准就无法合入受保护分支;规则写错会被当作无效条目忽略,配置后要用测试请求验证。
归属由匹配规则决定,书写顺序会影响结果,新增条目时注意与既有条目是否重叠。

落地步骤

  • 先在仓库里加入代码所有者文件并提交到默认分支
  • 在受保护分支的审批规则中启用代码所有者审批
  • 用一个测试请求验证归属是否按预期匹配
  • 为每个组配置备选审批人,避免流程被单个人阻塞

易错点

  • 组路径需要带命名空间,写错会被当作无效规则忽略,而且不会给出明显报错
  • 开启代码所有者审批后若对应组无人响应,合入会被长期阻塞,需要准备备选审批人
  • 路径模式的书写顺序影响匹配结果,与既有条目重叠时容易出现意料之外的归属
  • 把归属约定只写在文档里而不落到文件上,实际审批不会生效

数据来源与参考

  • GitLab Docs:Code Owners
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌