Azure DevOps 阻止推送到 master,但允许 PR 合并

Blu*_*uds 9 azure-devops azure-repos

我的理解是,分支策略允许我们阻止推送到 master,但允许 PR。但我在 Azure DevOps 上找不到允许我执行此操作的策略或安全设置。我缺少什么?

Wal*_*ter 9

设置所需的分支策略后,您无法直接将更改推送到分支。对分支的更改只能通过拉取请求进行。您可以参考这个文档

配置了所需策略的分支无法删除,并且需要对所有更改进行拉取请求 (PR)。

除非您有权绕过分支策略,否则您无法将更改直接推送到具有所需分支策略的分支。对这些分支的更改只能通过拉取请求进行。您可以将更改直接推送到具有可选分支策略的分支(如果它们没有必需的分支策略)。

请注意:

  • 如果您拥有允许绕过分支策略的权限,则可以在配置所需的分支策略后直接推送到分支。
  • 如果您配置了可选分支策略,但没有必需的分支策略,则可以将更改直接推送到分支。

例如:如果这里的策略要求是可选的,您仍然可以将更改直接推送到分支。如果需要这里的策略要求,则需要创建拉取请求来推送更改。

在此输入图像描述

  • 因此,重复一下这个问题,设置任何分支策略的副产品是阻止推送到 Master?我问同样的问题,因为该政策页面上没有任何内容表明该政策将阻止人们推送到 Master。这很令人困惑,因为在您的示例中,它说“构建失败不会阻止完成......”我们指的是与构建失败无关。我有 0 次构建失败,但它不会让我推送到我自己的存储库(我是项目管理员)的 Master。这太令人恼火了。该页面上的描述非常残酷。 (3认同)