开始使用 Copilot 对拉取请求进行代码审查

Azure DevOps服务

Important

此功能处于有限的公共 预览版 中,需要注册。 若要请求组织访问权限, 请注册公共预览版

功能可能会更改或删除,而不通知。 预览版功能没有服务级别协议(SLA)和有限的支持。

使用 GitHub Copilot 审查 Azure Repos 中的拉取请求。 Copilot充当自动审阅者,可在更改代码上发布评论和建议,以便在人工审阅者注销之前获得反馈。

若要使用该功能,Project集合管理员为组织启用该功能,存储库所有者会为每个存储库启用该功能,并且单个用户选择通过预览功能(除非管理员为每个人启用预览版)。

先决条件

类别 Requirements
组织 Azure DevOps 中的组织
存储库 Azure Repos中的 Git 存储库。 不支持 TFVC。
组织权限 Project集合管理员以在组织级别启用该功能。
存储库权限 存储库所有者或管理员为存储库启用该功能。
账单 链接到你的 Azure DevOps 组织的 Azure 订阅。 Copilot 代码审查使用情况通过 Azure 成本管理计费。 有关详细信息,请参阅 计费

在组织级别启用Copilot代码评审

在存储库所有者能够为单个存储库启用 Copilot 代码审查之前,项目集合管理员必须先为组织启用该功能。

  1. 登录到 Azure DevOps 组织(https://dev.azure.com/{yourorganization})。

  2. 选择 组织设置>Repos>存储库

  3. 在“GitHub Copilot 代码审查”下,将“允许此组织中的存储库使用 Copilot 代码审查”切换为“开”

    组织设置页面,其中允许存储库使用 Copilot 代码审查的切换开关设置为开。

在存储库级别启用Copilot代码评审

启用组织级访问后,存储库所有者会针对应使用它的每个存储库启用Copilot代码评审。

  1. 选择 项目设置>Repos>存储库

  2. 选择要启用的存储库。

  3. 在“设置”选项卡上,将“为此存储库中的拉取请求启用 Copilot 代码审查”切换为“开”

    存储库设置页面,其中为拉取请求启用 Copilot 代码审查的切换开关设置为开。

为单个用户启用 Copilot 代码评审

在组织和存储库级别启用该功能后,单个用户可以选择通过 预览功能加入。

  1. 选择右上角的用户头像,然后选择 “预览”功能

  2. 将范围设置为

  3. 找到“拉取请求的 Copilot 代码审查”并将其切换为“开”

    预览功能面板,其中拉取请求的 Copilot 代码审查设置为开。

小窍门

项目集合管理员可以将范围设置为整个组织,从而一次性为所有用户启用此预览功能。

若要验证该功能是否已启用,请在存储库中打开任何拉取请求。 GitHub Copilot现在应显示为 reviewers 列表中的可用审阅者。

使用 Copilot 代码审查

在三个作用域都启用此功能后,你可以要求 Copilot 审查拉取请求。 以下部分介绍预期内容。

请求评审

默认情况下,GitHub Copilot 仅会在您提出请求时审查拉取请求:

  1. 创建拉取请求。
  2. Reviewers 节中,选择 GitHub Copilot 旁边的 request
  3. 等待评审完成。 评审可能需要一些时间,具体取决于存储库的大小和拉取请求中的更改数。 评审完成后,状态将更改为 “审阅已完成”。

如果Copilot识别潜在问题,它会将注释和建议直接添加到拉取请求中,供你检查和解决。

阅读Copilot的注释

  • Copilot 在拉取请求中以名为 GitHub Copilot 的普通审阅者身份提交反馈。
  • 每个注释都显示在它适用的代码行上,并尽可能包括一键可以应用的建议更改。
  • Copilot 总是留下评论审查。 它从不批准拉取请求或请求更改,因此其审查不满足必需审查者策略,也不会阻止合并。
  • Copilot 的评论类似于人工评审者的评论。 你可以回复他们、对他们做出反应、解决或隐藏它们。 Copilot不会阅读回复,也不会跟进。

新提交后重新评审

当你推送新提交时,Copilot 不会自动重新审查拉取请求。 若要在提交后重新发起评审,请在 Reviewers 列表中再次选择 GitHub Copilot 旁边的 Request

要求和限制

以下要求和限制在预览期间适用,可以更改。

仅当拉取请求满足以下要求时,Copilot 才会对其进行审查:

要求 价值
拉取请求状态 积极
拉取请求合并状态 无合并冲突(合并成功
存储库大小 10 GB 或更少
拉取请求更改的文件 100 个文件或更少

这些并发和速率限制同样适用:

Limit 价值
对同一拉取请求版本的重复评审 每个合并提交 1 个完成的审查
每个拉取请求并发审查数 1
每个组织并发审查数 5
每个用户并发审查数 2

Billing

每个已完成的代码评审都会消耗令牌,包括发送到模型的输入令牌、模型生成的输出令牌,以及复用现有上下文的缓存令牌。 用于每个评审的令牌将转换为名为 GitHub AI 信用额度的标准计费单位,其中 1 个信用额度等于 0.01 美元。

费用将计入与你的 Azure DevOps 组织关联的 Azure 订阅,并在 Azure 成本管理 中显示为单独的计量项。 每次评审的成本会因拉取请求的大小、更改的行数等因素而有所不同。 若要估算环境中的预期成本,请首先为一两个存储库启用该功能,并监视每日使用情况。

要查看您的每日费用:

  1. Azure 门户中,转到订阅。

  2. 选择“成本管理”“成本分析”。

  3. 按产品进行筛选以查看组织的每日成本。

    Azure 成本管理成本分析屏幕截图,按产品筛选以显示 Copilot 代码审查费用。

设置预算警报

创建Azure预算,在支出达到设定的阈值时通知你。 预算仅向你发送通知。 它们不会停止评审或更改任何资源。 需要在链接到Azure DevOps组织的订阅上拥有所有者参与者成本管理参与者访问权限。

  1. Azure 门户中,打开与你的 Azure DevOps 组织关联的订阅。

  2. 选择 “成本管理>预算”,然后选择“ 添加”。

  3. “筛选器”下,为“产品”添加筛选器,然后选择 AzDO 的GitHub Copilot

    Azure 成本管理 预算筛选器,产品设置为“GitHub Copilot for AzDO”的屏幕截图。

  4. 如果订阅关联到多个 Azure DevOps 组织,请添加 Tag 筛选器,并选择要将警报定位到的组织名称标记。

  5. 输入预算名称,选择重置期和到期日期,设置预算金额,然后选择“ 下一步”。

  6. 将一个或多个警报阈值添加为预算百分比(例如,75% 和 90%),将 类型 设置为 “实际 ”或“ 预测”,并输入要通知的电子邮件地址。

  7. 选择“创建”

    “Azure 成本管理预算”页的屏幕截图,其中选择了“添加”以创建新预算。

当支出达到阈值时,Azure在下一次评估后的一小时内发送电子邮件。 若要查看触发的警报,请选择 “成本管理>成本警报”。 为避免提醒电子邮件进入垃圾邮件文件夹,请将 azure-noreply@microsoft.com 添加到已批准的发件人列表中。 有关详细信息,请参阅 “创建和管理预算”。

常见问题 (FAQ)

在哪里可以找到我按令牌计费的价目表?

请参阅 GitHub Copilot 文档中的 模型和定价

哪些因素会影响代码评审消耗的令牌数量?

令牌消耗取决于存储库大小、更改大小和所审查代码的复杂性等因素。

使用 Copilot 订阅购买的信用额度是否计入Azure DevOps中的代码评审使用情况? 是否可以从GitHub Copilot计划中使用 AI 额度?

不,在 Azure DevOps 中使用不会消耗 GitHub Copilot 套餐中的 AI 积分。

关闭 Copilot 代码审查

若要停止使用 Copilot 代码审查,请在要禁用的范围内,将开关设为 Off

  • 对于单个用户:在用户设置中关闭预览功能开关。
  • 对于一个存储库:在 Project 设置中关闭存储库切换>Repos>存储库
  • 对于整个组织:在组织设置>存储库>存储库中关闭组织切换开关。 此操作将禁用所有存储库的功能。

共享反馈

若要报告有关此预览版的问题或共享反馈,请访问 Azure DevOps 开发者社区

后续步骤