问题描述
我正在尝试设置跨仓库分支策略,以便在每次触摸azure-pipelines.yml文件时都需要获得管理员的批准。似乎很简单:
- 转到项目设置->存储库
- 为“ *”(所有分支)添加分支策略
- 添加一个自动包含的审阅者:1个来自“构建管理员”的要求;影响这些文件夹的拉取请求:/azure-pipelines.yml。 (我也尝试过此路径的各种版本,例如不带斜杠,带通配符,明确排除其他所有内容,等等)
- 保存
问题是它不起作用。当我去编辑不是azure-pipelines.yml文件的文件(例如readme.md)时,在没有其他策略的仓库中,我停了下来,并说必须提交拉取请求。我希望该提交无需PR即可完成,因为该政策未包含它。如果我禁用了自动包含的审阅者策略,则提交将顺利进行。
我已经准备好接受我使用不正确的方法,但是根据文档,这似乎是一个错误。有人有什么想法吗?几天来,我一直在尝试各种迭代。
解决方法
根据我的测试,我可以重现这种情况。
为自动包含的审阅者设置路径过滤器时,此路径过滤器仅影响审阅者的分支策略。
这是一个场景:
当您在*.yml
文件中进行一些更改并创建请求请求时,所需的审阅者将被自动添加。在其他情况下,不会自动添加此审阅者。
这是此路径过滤器的功能。
对于跨存储库分支机构政策:
如果您为*
(所有分支)设置了分支策略,则意味着不能直接推送所有分支,它们都需要创建拉取请求。
这将影响所有存储库。
存在分支策略时,您需要传递请求请求以推送更改。暂时在分支策略级别没有路径过滤器。因此,不能制定分支策略来跳过分支中的文件。
但是此要求很有价值,这是a suggestion ticket,具有相似的功能,您可以投票并在其中添加您的想法。