CodeOwner评审模式是一种用于指定特定文件或文件类型的所有者,以便在代码审查、合并请求等场景中自动分配审查任务的机制。
Code Review评审模式
理想Code Review中,Author常难寻最佳评审人。CodeOwner评审模式应运而生,它通过一个CODEOWNERS文件,明确各文件或模块的负责人。该文件置于分支根目录,系统据此自动匹配评审人。
一旦启用CodeOwner审核,系统会在目标分支根目录查找CODEOWNERS文件,读取设置。若文件仅有一位Owner,则必须其审核;若有多位(如A、B、C),则任一通过即可。系统自动检测并添加相关Owner至审核列表。
无匹配Owner时,至少需一人评审兜底。在评审中,文件匹配遵循最精细规则且明确,一文件一规则。
例如,CODEOWNERS文件定义的路径:
f.txt 精准对应**@user1规则
aa/f.txt 精准对应aa/**@user2规则
aa/mm/f.txt 精准对应aa/mm/**@user3规则
bb/f.txt 精准对应bb/**@user4规则
每份文件,都能对应适合的规则,让处理更加高效、精准。
在CODEOWNERS文件中,路径定义采用Glob语法,类似Linux的find命令或Git的.gitignore规则。使用@username
指定Owner,其中username
需为已验证的主邮箱。查看主邮箱,请前往 。
示例如下:
# 注释行,以下为配置正文,每一行代表一个配置。
# 一个路径规则后边,需要有一个或多个Owner
# 用户 A@example.com,B@example.com 作为所有文件的CodeOwner
** @A@example.com @B@example.com
# 用户 C@example.com 作为所有java文件的CodeOwner
**.java @C@example.com
# 用户 D@example.com、E@example.com 作为force-api目录下文件的CodeOwner
force-api/** @D@example.com @E@example.com
# 用户 F@example.com 作为force-base/src/main/java目录下文件的CodeOwner
force-base/src/main/java/** @F@example.com
相关文档
文档内容是否对您有帮助?