Azure DevOps Git分支审阅者策略过滤器有效性咨询
解决Azure DevOps分支审阅者策略过滤器反向生效的问题
核心问题排查
你遇到的过滤器反向生效问题,大概率是以下两个原因之一:
1. 策略配置项搞反
Azure DevOps分支策略中,关于文件路径的设置有两个关键选项:
- 对匹配这些路径的文件要求审阅:仅匹配路径的文件会触发审阅请求
- 忽略匹配这些路径的文件:匹配路径的文件不会触发审阅请求
如果误将*.cs;!*.cshtml设置在「忽略」选项中,就会出现你当前的情况:
*.cs文件被忽略,不触发审阅!*.cshtml表示不忽略该类型文件,所以.cshtml变更会触发审阅请求
2. 过滤器语法逻辑冗余
*.cs;!*.cshtml的写法语法本身正确,但!*.cshtml是多余的——因为*.cs仅匹配后缀为.cs的文件,.cshtml本身不会被*.cs规则匹配到,这个排除规则不会影响结果。
修复步骤
- 打开Azure DevOps仓库的「分支策略」页面,找到对应的审阅者策略
- 确认在**「对匹配这些路径的文件要求审阅」**输入框中设置过滤器
- 简化过滤器为
*.cs即可满足需求——仅对所有.cs文件触发审阅,.cshtml文件自动被排除,无需额外写!*.cshtml - 若需精确匹配特定目录下的
.cs文件,可使用带路径的规则,比如/src/*.cs
验证方法
提交一个同时包含.cs和.cshtml文件变更的PR,确认:
- 审阅请求仅包含
.cs文件的变更内容 .cshtml文件的变更不会触发审阅要求
内容的提问来源于stack exchange,提问作者Bastien Vandamme
相关产品推荐
相关产品推荐

