Azure Devops跨存储库分支策略路径筛选器不起作用

问题描述

我正在尝试设置跨仓库分支策略,以便在每次触摸azure-pipelines.yml文件时都需要获得管理员的批准。似乎很简单:

  1. 转到项目设置->存储库
  2. 为“ *”(所有分支)添加分支策略
  3. 添加一个自动包含的审阅者:1个来自“构建管理员”的要求;影响这些文件夹的拉取请求:/azure-pipelines.yml。 (我也尝试过此路径的各种版本,例如不带斜杠,带通配符,明确排除其他所有内容,等等)
  4. 保存

问题是它不起作用。当我去编辑不是azure-pipelines.yml文件文件(例如readme.md)时,在没有其他策略的仓库中,我停了下来,并说必须提交拉取请求。我希望该提交无需PR即可完成,因为该政策未包含它。如果我禁用了自动包含的审阅者策略,则提交将顺利进行。

我已经准备好接受我使用不正确的方法,但是根据文档,这似乎是一个错误。有人有什么想法吗?几天来,我一直在尝试各种迭代。

解决方法

根据我的测试,我可以重现这种情况。

为自动包含的审阅者设置路径过滤器时,此路径过滤器仅影响审阅者的分支策略。

这是一个场景:

当您在*.yml文件中进行一些更改并创建请求请求时,所需的审阅者将被自动添加。在其他情况下,不会自动添加此审阅者。

这是此路径过滤器的功能。

对于跨存储库分支机构政策:

如果您为*(所有分支)设置了分支策略,则意味着不能直接推送所有分支,它们都需要创建拉取请求。

这将影响所有存储库。

存在分支策略时,您需要传递请求请求以推送更改。暂时在分支策略级别没有路径过滤器。因此,不能制定分支策略来跳过分支中的文件。

但是此要求很有价值,这是a suggestion ticket,具有相似的功能,您可以投票并在其中添加您的想法。