

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

# 使用源修订覆盖启动管道
<a name="pipelines-trigger-source-overrides"></a>

您可以使用覆盖来启动一个管道，该管道具有您为管道执行提供的特定源修订 ID。例如，如果您想启动一个管道来处理来自您的 CodeCommit 来源的特定提交 ID，则可以在启动管道时将提交 ID 添加为替代。

**注意**  
您也可以使用输入转换条目创建源重写，以便`revisionValue`在 EventBridge 管道事件中使用 in，其中派生自对象密钥、提交或图像 ID 的源事件变量。`revisionValue`有关更多信息，请参阅[Amazon ECR 源操作和 EventBridge 资源](create-cwe-ecr-source.md)、[连接到启用事件源的 Amazon S3 源操作](create-S3-source-events.md)或[CodeCommit 源操作和 EventBridge](triggering.md)下的流程中包含的输入转换条目的可选步骤。

`revisionType` 有四种类型的源修订：
+ `COMMIT_ID`
+ `IMAGE_DIGEST`
+ `S3_OBJECT_VERSION_ID`
+ `S3_OBJECT_KEY`

**注意**  
对于 `COMMIT_ID` 和 `IMAGE_DIGEST` 类型的源修订，源修订 ID 适用于存储库中所有分支的所有内容。

**注意**  
对于`S3_OBJECT_VERSION_ID`和`S3_OBJECT_KEY`类型的源修订版本，两种类型都可以单独使用，也可以将它们一起使用以使用特定的 ObjectKey 和版本标识来覆盖源代码。对于 `S3_OBJECT_KEY`，配置参数 `AllowOverrideForS3ObjectKey` 需要设置为 `true`。有关 S3 源配置参数的更多信息，请参阅 [配置参数](action-reference-S3.md#action-reference-S3-config)。

**Topics**
+ [使用源修订覆盖启动管道（控制台）](#pipelines-trigger-source-overrides-console)
+ [使用源修订覆盖启动管道（CLI）](#pipelines-trigger-source-overrides-cli)

## 使用源修订覆盖启动管道（控制台）
<a name="pipelines-trigger-source-overrides-console"></a>

**手动启动管道并通过管道运行最新的修订**

1. 登录 Amazon Web Services 管理控制台 并打开 CodePipeline 控制台，[网址为 http://console.aws.amazon。 com/codesuite/codepipeline/home](https://console.amazonaws.cn/codesuite/codepipeline/home)。

1. 在**名称**中，选择要启动的管道的名称。

1. 在管道详细信息页中，选择**发布更改**。选择**发布更改**将打开**发布更改**窗口。对于**源修订覆盖**，请选择箭头以展开字段。在**源**中，输入源修订 ID。例如，如果您的管道有 CodeCommit 源，请从要使用的字段中选择提交 ID。  
![中的 CodePipeline “覆盖” 屏幕示例。](http://docs.amazonaws.cn/codepipeline/latest/userguide/images/overrides.png)

## 使用源修订覆盖启动管道（CLI）
<a name="pipelines-trigger-source-overrides-cli"></a>

**手动启动管道并通过管道运行构件的指定源修订 ID**

1. 打开终端（Linux、macOS 或 Unix）或命令提示符 (Windows)，并使用 Amazon CLI 运行 **start-pipeline-execution** 命令，指定您要启动的管道的名称。还可以使用 **--source-revisions** 参数来提供源修订 ID。源修订由 actionName、revisionType 和 revisionValue 组成。有效的 revisionType 值为 `COMMIT_ID | IMAGE_DIGEST | S3_OBJECT_VERSION_ID | S3_OBJECT_KEY`。

   在以下示例中，我们要通过一个名为 **codecommit-pipeline** 的管道，开始运行指定的更改。以下命令将指定一个名为 Source 的源操作、一个 `COMMIT_ID` 修订类型和一个 `78a25c18755ccac3f2a9eec099dEXAMPLE` 提交 ID。

   ```
   aws codepipeline start-pipeline-execution --name codecommit-pipeline --source-revisions actionName=Source,revisionType=COMMIT_ID,revisionValue=78a25c18755ccac3f2a9eec099dEXAMPLE --region us-west-1
   ```

1. 要验证是否成功，请查看返回的对象。该命令将返回执行 ID，如下所示：

   ```
   {
       "pipelineExecutionId": {{"c53dbd42-This-Is-An-Example"}}
   }
   ```
**注意**  
启动管道后，可以在 CodePipeline 控制台中或通过运行**get-pipeline-state**命令来监控其进度。有关更多信息，请参阅[查看管道（控制台）](pipelines-view-console.md)和[查看管道详细信息和历史记录（CLI）](pipelines-view-cli.md)。