Skip to content

Latest commit

 

History

History
99 lines (74 loc) · 2.72 KB

File metadata and controls

99 lines (74 loc) · 2.72 KB

过滤规则功能说明

功能概述

过滤规则功能允许您配置正则表达式来自动识别无需审查的提交。匹配到过滤规则的提交将被标记为"无需审查",不会影响审查覆盖率统计。

使用方法

1. 配置过滤规则

  1. 进入"设置"页面
  2. 编辑或添加项目配置
  3. 在"过滤规则"文本框中输入正则表达式(每行一个规则)
  4. 保存配置

2. 规则示例

^(build|ci|docs|feat|fix|perf|refactor|style|test).*
^Merge branch.*
^Update.*
^Initial commit.*
^.*version bump.*

3. 规则说明

  • ^(build|ci|docs|feat|fix|perf|refactor|style|test).* - 匹配标准的commit类型前缀
  • ^Merge branch.* - 匹配合并分支的提交
  • ^Update.* - 匹配以"Update"开头的提交
  • ^Initial commit.* - 匹配初始提交
  • ^.*version bump.* - 匹配版本更新提交

功能特点

自动过滤

  • 符合过滤规则的提交自动标记为"无需审查"
  • 在项目详情页面显示灰色"无需审查"标签
  • 不影响审查覆盖率统计

规则验证

  • 系统会自动验证正则表达式的有效性
  • 无效的规则会被忽略,不会影响其他规则的执行
  • 支持多行规则配置

实时生效

  • 规则配置保存后立即生效
  • 重新获取提交记录时会应用新的过滤规则

常用规则模板

标准Git提交规范

^(build|ci|docs|feat|fix|perf|refactor|style|test)(\(.+\))?:.*

合并提交

^Merge (branch|pull request).*
^Merge remote-tracking branch.*

自动化提交

^(Update|Bump|Release).*
^Auto.*
^Automated.*
^Bot:.*

文档更新

^(docs?|readme|changelog):.*
^Update (README|CHANGELOG|LICENSE).*

注意事项

  1. 正则表达式语法:使用JavaScript正则表达式语法
  2. 大小写不敏感:规则匹配时忽略大小写
  3. 逐行处理:每行一个规则,空行会被忽略
  4. 错误处理:无效的正则表达式会被跳过,不会影响其他规则
  5. 性能考虑:复杂的正则表达式可能影响性能,建议使用简单明确的规则

审查状态说明

配置过滤规则后,提交的审查状态会有以下几种:

  • 🟢 已审核 - 所有配置的审核人员都已审核
  • 🔵 部分审核 - 部分审核人员已审核
  • 🟡 待审核 - 尚未有人审核
  • 🔵 本人提交 - 当前用户自己的提交
  • 无需审查 - 符合过滤规则或无配置审核人员

统计影响

  • 符合过滤规则的提交在审查覆盖率统计中被视为"已完成"
  • 不会降低项目的整体审查覆盖率
  • 有助于专注于真正需要审查的业务代码提交