openEuler2026-08-27openEuler机器人CODEOWNERS
机器人 + CODEOWNERS 双重审核机制说明
1. 机器人是如何控制PR的合入?
openEuler社区的PR当前依靠SIG 组
maintainer和
committer通过加分 (
maintainer或者
committer输入命令
/lgtm、
/approve,触发机器人对该PR进行打
lgtm、
approve标签 ) 的方式 来检视代码,当 PR 的标签满足了合入条件之后,机器人会自动触发合入(也可以通过
/check-pr来查看缺少哪些合入条件,如果满足了合入条件,该命令会触发PR合入)
2. CODEOWNERS 如何管控PR是否能够合入?
CODEOWNERS机制能够做到
文件/目录级别的审查管控。 实际上AtomGit平台已经有详细的说明文档,
Code Owners和
Code Owners 审查设置,在这里我们就以一个例子简单说一下规则和注意事项
* @yao-xiaobai/A/ @yao-xiaobai @Coopermassaki/B/ @yao-xiaobai @yongfum/C/ @Coopermassaki @yongfum/CODEOWNERS @georgecao- 通配符
*: 对于 PR 没有命中 CODEOWNERS 的修改文件或目录进行兜底(也可以不配置该行) - 如果没有配置 通配符
*,对于没命中的PR, 就不会有PR审查的限制 - 如果PR 同时修改了多个目录,且这些目录被CODEOWNERS 文件命中,这需要多行的审查人员审查
- CODEOWNERS文件只对当前分支有效。因此,如果每个分支都需要管控,都需要有 CODEOWNERS 文件
- 文件中配置的 atomgit id 需要是本仓库成员
- 每个目录或文件,需要 CODEOWNERS 文件相应行所有审查人员通过才可以(如果设置成协同模式,一行只需要一人通过)
- 对于PR 如果审查人员没通过,是合入不了的
图: PR命中了CODEOWNERS 文件
A:会将命中的审视人员的atomgit 展示在此处
B:如果审视人员没有全部通过会告知不能合并的原因
C:CODEOWNERS 审视者可以通过点击
通过审查按钮表示通过
D:因审视者未审视通过,合入按钮置灰
3. 机器人 + CODEOWNERS 双重审核
如果我们既要SIG 组的
maintainer和
committer通过加分的方式来检视代码,又想对关键目录和文件的代码质量做管控,机器人 + CODEOWNERS 双重审核机制比较适合我们。 这套机制里,机器人的合入条件和 CODEOWNERS 合入条件是
逻辑与的关系。也就是说,PR不仅要满足机器人合入的条件(lgtm、approve、openeuler-cla/yes、ci-pipeline-passed 等等),还需要满足全部 CODEOWNERS 审查通过。
如果机器人合入条件满足了,但是CODEOWNERS 合入条件没满足,机器人尝试合入的话,会报如下错误(该错误会回显至PR评论区):
### PR Merge Failed- reason: {"message":"Not enough required approvers"}这时候,需要 CODEOWNERS 去审核通过,如果审核通过了,再输入
/check-pr即可合入PR
至此,机器人 + CODEOWNERS 双重审核机制的介绍就结束啦,赶紧用起来吧! ☺
【版权声明】Copyright © 2026 openEuler Community。本文由openEuler社区首发,欢迎遵照
CC-BY-SA 4.0协议规定转载。转载时敬请在正文注明并保留原文链接和作者信息。
【免责声明】本文仅代表作者本人观点,与本网站无关。本网站对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。本文仅供读者参考,由此产生的所有法律责任均由读者本人承担。