为外部服务配置分支策略

Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022 |Azure DevOps Server 2020

分支策略是一项功能强大的功能,通过为所有拉取请求建立要求来确保存储库中的高质量代码。 外部服务可以使用 PR 状态 API 将详细状态发布到 PR。 外部服务的分支策略使第三方服务能够参与 PR 工作流并建立策略要求。 本文指导你完成为发布 PR 状态的服务配置分支策略的过程。 有关 PR 状态的详细信息,请参阅 使用拉取请求状态自定义和扩展拉取请求工作流

先决条件

类别 要求
项目访问权限 项目的成员。
权限 - 查看专用项目中的代码:至少 是基本 访问权限。
- 克隆或参与专用项目中的代码: 参与者 安全组的成员或项目中的相应权限。
- 设置分支或存储库权限: 管理 分支或存储库的权限。
- 更改默认分支: 编辑存储库的策略 权限。
- 导入存储库: 项目管理员 安全组的成员或 Git 项目级 “创建存储库 ”权限设置为 “允许”。 有关详细信息,请参阅 “设置 Git 存储库权限”。
Services 已启用存储库
工具 可选。 使用 az repos 命令: Azure DevOps CLI

注释

在公共项目中,具有 利益干系人 访问权限的用户具有对 Azure Repos 的完全访问权限,包括查看、克隆和参与代码。

类别 要求
项目访问权限 项目的成员。
权限 - 查看代码:至少 基本 访问权限。
- 克隆或参与代码: 参与者 安全组的成员或项目中的相应权限。
Services 已启用存储库

配置分支策略

  1. 导航到 代码>分支 ,找到要配置策略的分支(通常 maindevelop)。 从上下文菜单中,选择 “分支策略 ”选项。

    从上下文菜单中选择分支策略

  2. 向下滚动以查找 状态检查。 选择 + 按钮。

    选择“添加策略”按钮

  3. 从列表中选择要为其创建策略的服务。 如果之前发布过状态,则可以从列表中选择它;如果是新策略,则可以键入策略的名称。

    从列表中选择策略

    • 策略要求 确定此策略是可选的,还是需要完成拉取请求到分支。
    • 授权标识 用于仅将指定标识中的状态强制用于策略履行。
    • 重置条件 用于确定发布状态何时不再有效。 如果发布的状态特定于最新代码(即生成),请在源分支发生更改时检查 重置 状态。
    • (可选)设置 路径筛选器。 详细了解分支策略中的 路径筛选器
    • 策略适用性 确定在创建拉取请求后是否立即应用此策略,或策略是否仅在将第一个状态发布到拉取请求后适用。
    • 默认显示名称 允许指定策略的可选显示名称。

创建新的拉取请求

  1. 在定义策略的分支中创建新的拉取请求。 有关详细信息,请参阅 创建拉取请求

  2. 创建 PR 后,新策略将显示在 PR 详细信息视图的“策略”部分中。 最初,在外部服务发布状态之前,策略将显示为未设置。

    策略状态在“策略”部分中可见

    服务发布状态后,策略将相应地更新。 在策略批准 PR 之前,将阻止完成。

    策略状态更新

    如果满足策略条件,并且服务发布 succeeded 状态,则 PR 将得到批准,并取消阻止完成。

    已批准和完成的策略状态已取消阻止

概要

本文介绍了如何为外部服务配置分支策略。