

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

# 在 Amazon S3 中注册应用程序修订版 CodeDeploy
<a name="application-revisions-register"></a>

如果您已调用 [push](https://docs.aws.amazon.com/cli/latest/reference/deploy/push.html) 命令将应用程序修订推送到 Amazon S3，则无需注册修订。但是，如果您通过其他方式将修订版上传到 Amazon S3，并希望修订版显示在 CodeDeploy 控制台中或通过中 AWS CLI，请先按照以下步骤注册该修订版。

如果您已将应用程序修订推送到 GitHub 存储库，并希望该修订版显示在 CodeDeploy 控制台中或通过中 AWS CLI，则还必须按照以下步骤操作。

您只能使用 AWS CLI 或在 Amazon S3 中注册应用程序修订版或 GitHub。 CodeDeploy APIs 

**Topics**
+ [使用 CodeDeploy (CLI) 在 Amazon S3 中注册修订版](#application-revisions-register-s3)
+ [在 CodeDeploy (CLI) 中 GitHub 注册修订版](#application-revisions-register-github)

## 使用 CodeDeploy (CLI) 在 Amazon S3 中注册修订版
<a name="application-revisions-register-s3"></a>

1. 将修订上传到 Amazon S3。

1. 调用 [register-application-revision](https://docs.aws.amazon.com/cli/latest/reference/deploy/register-application-revision.html) 命令，在命令中指定：
   + 应用程序名称。要查看应用程序名称的列表，请调用 [list-applications](https://docs.aws.amazon.com/cli/latest/reference/deploy/list-applications.html) 命令。
   + 有关要注册的修订的信息：
     + 包含修订的 Amazon S3 存储桶的名称。
     + 已上传修订的名称和文件类型。对于 AWS Lambda 部署，修订版是用 JSON 或 YAML 编写的 AppSpec 文件。对于 EC2/本地部署，修订版包含 CodeDeploy 将部署到您的实例的源文件版本或将在您的实例上运行的 CodeDeploy 脚本。
**注意**  
Windows Server 实例不支持 tar 和压缩的 tar 存档文件格式（.tar 和.tar.gz）。
     + （可选）修订的 Amazon S3 版本标识符。（如果未指定版本标识符， CodeDeploy 将使用最新的版本。）
     + （可选）修订版的 ETag。（如果 ETag 未指定， CodeDeploy 将跳过对象验证。）
   + （可选）您要与修订关联的任何描述。

可以在命令行中，在 **register-application-revision** 调用中使用以下语法来指定有关 Amazon S3 中修订的信息。（`version` 和 `eTag` 为可选项。）

对于 EC2/本地部署的修订文件：

```
--s3-location bucket=string,key=string,bundleType=tar|tgz|zip,version=string,eTag=string
```

要获取 AWS Lambda 部署的修订文件，请执行以下操作：

```
--s3-location bucket=string,key=string,bundleType=JSON|YAML,version=string,eTag=string
```

## 在 CodeDeploy (CLI) 中 GitHub 注册修订版
<a name="application-revisions-register-github"></a>

**注意**  
AWS Lambda 部署不适用于 GitHub。

1. 将修订版上传到您的 GitHub 存储库。

1. 调用 [register-application-revision](https://docs.aws.amazon.com/cli/latest/reference/deploy/register-application-revision.html) 命令，在命令中指定：
   + 应用程序名称。要查看应用程序名称的列表，请调用 [list-applications](https://docs.aws.amazon.com/cli/latest/reference/deploy/list-applications.html) 命令。
   + 有关要注册的修订的信息：
     + 分配给包含修订的存储库的 GitHub 用户名或组名，后跟正斜杠 (`/`)，后跟存储库名称。
     + 引用存储库中修订的提交的 ID。
   + （可选）您要与修订关联的任何描述。

 GitHub 可以在命令行中使用以下语法作为**register-application-revision**调用的一部分，在命令行上指定有关版本的信息：

```
--github-location repository=string,commitId=string
```