覆盖拉取请求的审批规则 - Amazon CodeCommit
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

覆盖拉取请求的审批规则

在正常开发过程中,您希望用户在合并拉取请求之前满足审批规则的条件。但是,有时您可能需要加快合并拉取请求。例如,您可能希望在生产中放置错误修复,但审批池中无人可审批拉取请求。在这种情况下,您可以选择覆盖拉取请求的审批规则。您可以覆盖拉取请求的所有审批规则,包括那些专门为拉取请求创建并从审批规则模板生成的规则。您不能选择性地覆盖特定审批规则,只能覆盖所有规则。通过覆盖规则预留审批规则要求之后,可以将拉取请求合并到其目标分支中。

当您覆盖拉取请求的审批规则时,有关覆盖这些规则的用户的信息将记录在拉取请求的活动中。这样一来,您可以返回拉取请求的历史记录,查看是谁覆盖了规则。如果拉取请求仍处于打开状态,您也可以选择撤销覆盖。拉取请求在合并之后,便无法再撤销覆盖。

覆盖批准规则(控制台)

作为拉取请求审核的一部分,您可以在控制台中覆盖拉取请求的审批规则要求。如果您改变主意,可以撤销覆盖,并重新应用审批规则要求。只有当拉取请求仍处于打开状态时,才能覆盖审批规则或撤销覆盖。如果拉取请求已合并或关闭,则无法更改其覆盖状态。

  1. 从打开 CodeCommit 控制台https://console.aws.amazon.com/codesuite/codecommit/home.

  2. 存储库中,选择存储库的名称。

  3. 在导航窗格中,选择拉取请求。选择要覆盖其审批规则要求,或撤销覆盖的拉取请求。

  4. Approvals (审批) 选项卡上,选择 Override approval rules (覆盖审批规则)。这些要求将预留,且按钮文本更改为 Revoke override (撤销覆盖)。要重新应用审批规则要求,请选择 Revoke override (撤销覆盖)

覆盖审批规则 (Amazon CLI)

您可以使用 Amazon CLI 覆盖审批规则要求。您还可以使用它来查看拉取请求的覆盖状态。

覆盖拉取请求的审批规则要求

  1. 在终端或命令行中,运行 override-pull-request-approval-rules 命令,并指定:

    • 系统生成的拉取请求的 ID。

    • 拉取请求的最新修订 ID。要查看此信息,请使用 get-pull-request

    • 您希望的覆盖状态,OVERRIDEREVOKEREVOKE 状态会删除 OVERRIDE 状态,但不会保存。

    例如,要覆盖 ID 为 34 且修订 ID 为 927df8d8EXAMPLE 的拉取请求的审批规则,请运行以下命令:

    aws codecommit override-pull-request-approval-rules --pull-request-id 34 --revision-id 927df8d8dEXAMPLE --override-status OVERRIDE
  2. 如果成功,该命令不返回任何内容。

  3. 要撤销 ID 为 34 且修订 ID 为 927df8d8EXAMPLE 的拉取请求的覆盖,请运行以下命令:

    aws codecommit override-pull-request-approval-rules --pull-request-id 34 --revision-id 927df8d8dEXAMPLE --override-status REVOKE

获取有关拉取请求覆盖状态的信息

  1. 在终端或命令行中,运行 get-pull-request-override-state 命令,并指定:

    • 系统生成的拉取请求的 ID。

    • 拉取请求的最新修订 ID。要查看此信息,请使用 get-pull-request

    例如,要查看 ID 为 34 且修订 ID 为 927df8d8EXAMPLE 的拉取请求的覆盖状态,请运行以下命令:

    aws codecommit get-pull-request-override-state --pull-request-id 34 --revision-id 927df8d8dEXAMPLE
  2. 如果成功,该命令产生类似以下内容的输出:

    { "overridden": true, "overrider": "arn:aws:iam::123456789012:user/Mary_Major" }