

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

# Setting up for AWS CodeCommit
<a name="setting-up"></a>

您可以登录到 AWS 管理控制台并直接从 [ 控制台在存储库中](files.md)上传、添加或编辑文件AWS CodeCommit。这是一种执行更改的快速方法。但是，如果您希望处理多个文件、处理跨分支文件等，请考虑设置您的本地计算机来使用存储库。设置 CodeCommit 的最简单方法是为 AWS CodeCommit 配置 HTTPS Git 凭证。该 HTTPS 身份验证方法：
+ 使用静态用户名和密码。
+ 适用于 CodeCommit 支持的所有操作系统。
+ 兼容支持 Git 凭证的集成开发环境 (IDE) 及其他开发工具。

如果出于操作原因您不想或不能使用 Git 凭证，也可以使用其他方法。例如，如果您使用联合访问、临时凭证或 Web 身份提供程序访问 CodeCommit 存储库，则无法使用 Git 凭证。我们建议您使用 `git-remote-codecommit` 命令设置本地计算机。请仔细查看这些选项，以确定最适合您的替代方法。
+ [使用 Git 凭证进行设置](#setting-up-standard)
+ [使用其他方法进行设置](#setting-up-other)
+ [CodeCommit、Git 及其他组件的兼容性](#setting-up-compat)

有关将 CodeCommit 与 Amazon Virtual Private Cloud 一起使用的信息，请参阅[AWS CodeCommit 与接口 VPC 终端节点一起使用](codecommit-and-interface-VPC.md)。

## 查看和管理您的凭证
<a name="setting-up-view-credentials"></a>

您可以在 AWS 控制台中通过**我的安全凭证**查看和管理您的 CodeCommit 凭证。

**注意**  
此选项不适用于使用联合访问权限、临时证书或 Web 身份提供商的用户。

1. 登录 AWS 管理控制台，然后通过以下网址打开 IAM 控制台：[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。

1. 在右上角的导航栏中，选择您的用户名，然后选择 **Security Credentials**。

1. 选择 **AWS CodeCommit 凭证**选项卡。

## 使用 Git 凭证进行设置
<a name="setting-up-standard"></a>

利用 HTTPS 连接和 Git 凭证，您可以在 IAM 中生成静态用户名和密码。然后，您可以在 Git 和支持 Git 用户名及密码身份验证的任何第三方工具中使用这些凭证。大多数 IDE 和开发工具都支持这种方法。它是配合 CodeCommit 使用时最简单、最轻松的连接方法。
+ [适用于使用 Git 凭证的 HTTPS 用户](setting-up-gc.md)：按照以下说明使用 Git 凭证设置本地计算机与 CodeCommit 存储库之间的连接。
+ [从开发工具进行的连接](setting-up-ide.md)：按照以下准则使用 Git 凭证设置 IDE 或其他开发工具与 CodeCommit 存储库之间的连接。支持 Git 凭证的 IDE 包括（但不限于）Visual Studio、Xcode 和 IntelliJ。

## 使用其他方法进行设置
<a name="setting-up-other"></a>

您可以使用 SSH 协议而不是 HTTPS 来连接 CodeCommit 存储库。借助 SSH 连接，您可以在本地计算机上创建公有和私有密钥文件，以供 Git 和 CodeCommit 进行 SSH 身份验证。您将公有密钥关联到 IAM 用户，并将私有密钥存储在本地计算机上。SSH 需要手动创建和管理公有密钥和私有密钥文件，因此，您可能会发现配合 Git 凭证来使用 CodeCommit 会更简单、更容易。

与 Git 凭证不同，SSH 连接设置因本地计算机上的操作系统而异。
+ [对于未使用的 SSH 用户 AWS CLI](setting-up-without-cli.md)：如果您已有公有-私有密钥对并且很熟悉您本地计算机上的 SSH 连接，请按照这些简要说明操作。
+ [适用于 Linux、macOS 或 Unix 上的 SSH 连接](setting-up-ssh-unixes.md)：请按照这些分步演练说明在 Linux、macOS 或 Unix 操作系统上创建公有密钥/私有密钥对并设置连接。
+ [适用于 Windows 上的 SSH 连接](setting-up-ssh-windows.md)：请按照这些分步演练说明在 Windows 操作系统上创建公有密钥/私有密钥对并设置连接。

如果要使用联合访问、身份提供程序或临时凭证连接到 CodeCommit 和 AWS，或者您不想为用户配置 IAM 用户或为 IAM 用户配置 Git 凭证，则可以通过以下两种方式之一建立与 CodeCommit 存储库的连接：
+ 安装和使用 **git-remote-codecommit**（推荐）。
+ 安装并使用 AWS CLI 中包含的凭证辅助程序。

 这两种方法都支持无需 IAM 用户即可访问 CodeCommit 存储库，这意味着您可以使用联合访问和临时凭证连接到存储库。git-remote-codecommit 实用程序是推荐采用的方法。它扩展 Git，并与各种 Git 版本和凭证辅助程序兼容。但是，并非所有 IDE 都支持 `git-remote-codecommit` 使用的克隆 URL 格式。您可能需要手动将存储库克隆到本地计算机，然后才能在 IDE 中使用它们。
+ 请按照[使用 git-remote-codecommit 设置到 AWS CodeCommit 存储库的 HTTPS 连接的步骤](setting-up-git-remote-codecommit.md)中的说明在 Windows、Linux、macOS 或 Unix 上安装和设置 **git-remote-codecommit**。

每当 Git 需要使用 AWS 进行身份验证来与 CodeCommit 存储库交互时，AWS CLI 中包含的凭证助手允许 Git 使用 HTTPS 和 IAM 用户凭证或 Amazon EC2 实例角色的加密签名版本。某些操作系统和 Git 版本有自己的凭证辅助程序，它们会与 AWS CLI 中包含的凭证辅助程序发生冲突。它们可能导致 CodeCommit 连接问题。
+ [使用凭证助手在 Linux、macOS 或 Unix 上使用 HTTPS 连接 AWS CLI ](setting-up-https-unixes.md)：按照这些分步演练说明在 Linux、macOS 或 Unix 系统上安装和设置凭证助手。
+ [用于在 Windows 上使用 AWS CLI 凭据助手进行 HTTPS 连接](setting-up-https-windows.md)：按照这些分步演练说明在 Windows 系统上安装和设置凭证辅助程序。

如果您正在连接到在其他 Amazon Web Services 账户中托管的 CodeCommit 存储库，可以使用 AWS CLI 附带的角色、策略和凭证助手来配置访问权限和设置连接。
+ [使用角色配置对 AWS CodeCommit 仓库的跨账户访问权限](cross-account.md)：按照以下说明完成分步演练，来配置在一个 Amazon Web Services 账户中对另一个 Amazon Web Services 账户的 IAM 组中的用户执行跨账户访问。

## CodeCommit、Git 及其他组件的兼容性
<a name="setting-up-compat"></a>

在使用 CodeCommit, 时，可使用 Git。您也可以使用其他程序。下表提供了有关版本兼容性的最新指南。作为最佳做法，我们建议您使用最新版本的 Git 和其他软件。


**AWS CodeCommit 的版本兼容性信息**  

| 组件 | 版本 | 
| --- | --- | 
| Git | CodeCommit 支持 Git 1.7.9 及更高版本。Git 版本 2.28 支持为初始提交配置分支名称。我们建议使用最新版本的 Git。 | 
| Curl | CodeCommit 需要 curl 7.33 及更高版本。但 HTTPS 和 curl 更新 7.41.0 存在一个已知问题。有关更多信息，请参阅 [故障排除](troubleshooting.md)。 | 
| Python（仅限 git-remote-codecommit） | git-remote-codecommit 需要版本 3 及更高版本。 | 
| Pip（仅限 git-remote-codecommit） | git-remote-codecommit 需要 9.0.3 及更高版本。 | 
| AWS CLI（仅 git-remote-codecommit） | 我们建议所有 CodeCommit 用户使用最新版本的 AWS CLI 的版本 2。git-remote-codecommit 需要 AWS CLI 版本 2 才能支持 AWS SSO 和需要临时凭证的连接，例如联合用户。 | 

# 适用于使用 Git 凭证的 HTTPS 用户的设置
<a name="setting-up-gc"></a>

设置 AWS CodeCommit 存储库连接的最简单方法是在 IAM 控制台 CodeCommit 中配置 Git 证书，然后使用这些证书进行 HTTPS 连接。您还可以将这些凭证用于支持使用静态用户名和密码进行 HTTPS 身份验证的任何第三方工具或集成式开发环境 (IDE)。有关示例，请参阅 [从开发工具进行的连接](setting-up-ide.md)。

**注意**  
如果您之前已将本地计算机配置为使用凭据助手 CodeCommit，则必须先编辑您的.gitconfig 文件以从文件中删除凭证帮助程序信息，然后才能使用 Git 凭据。如果您的本地计算机运行的是 macOS，则您可能需要通过 Keychain Access 清除缓存的凭证。

## 步骤 1：的初始配置 CodeCommit
<a name="setting-up-gc-account"></a>

按照以下步骤设置 Amazon Web Services 账户、创建 IAM 用户并配置访问权限 CodeCommit。

**创建和配置用于访问的 IAM 用户 CodeCommit**

1. 前往 [http://aws.amazon.com](https://aws.amazon.com/)，并选择**注册**，创建一个 Amazon Web Services 账户。

1. 创建 IAM 用户或使用您的 Amazon Web Services 账户中的现有用户。确保您具有与该 IAM 用户关联的访问密钥 ID 和秘密访问密钥。有关更多信息，请参阅[在 Amazon Web Services 账户中创建 IAM 用户](https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_SettingUpUser.html)。
**注意**  
CodeCommit 要求 AWS Key Management Service。如果您使用的是现有的 IAM 用户，请确保该用户没有明确拒绝所要求的 AWS KMS 操作的策略 CodeCommit。有关更多信息，请参阅 [AWS KMS 和加密](encryption.md)。

1. 登录 AWS 管理控制台 并打开 IAM 控制台，网址为[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。

1. **在 IAM 控制台的导航窗格中，选择 Users，然后选择要配置 CodeCommit 访问权限的 IAM 用户。**

1. 在 **Permissions** 选项卡上，选择 **Add Permissions**。

1. 在 **Grant permissions (授予权限)** 中，选择 **Attach existing policies directly (直接附加现有策略)**。

1. 从策略列表中，选择**AWSCodeCommitPowerUser**或其他托管策略进行 CodeCommit 访问。有关更多信息，请参阅 [AWS 的托管策略 CodeCommit](security-iam-awsmanpol.md)。

   选择要附加的策略后，选择**下一步：审核**以审核要附加到 IAM 用户的策略列表。如果列表正确，选择 **Add permissions**。

    有关 CodeCommit 托管策略以及与其他群组和用户共享仓库访问权限的更多信息，请参阅[共享存储库](how-to-share-repository.md)和[的身份验证和访问控制 AWS CodeCommit](auth-and-access-control.md)。

如果要在中使用 AWS CLI 命令 CodeCommit，请安装 AWS CLI。我们建议您创建配置文件以便 AWS CLI 与一起使用 CodeCommit。有关更多信息，请参阅 [命令行参考](cmd-ref.md) 和[使用命名配置文件](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html#cli-configure-files-using-profiles)。

## 步骤 2：安装 Git
<a name="setting-up-gc-install-git"></a>

要处理 CodeCommit 存储库中的文件、提交和其他信息，必须在本地计算机上安装 Git。 CodeCommit 支持 Git 版本 1.7.9 及更高版本。Git 版本 2.28 支持为初始提交配置分支名称。我们建议使用最新版本的 Git。

要安装 Git，建议您访问 [Git 下载](http://git-scm.com/downloads)等网站。

**注意**  
Git 是一个不断发展的平台，会定期进行更新。有时，功能更改可能会影响其工作方式 CodeCommit。如果您在使用特定版本的 Git 时遇到问题 CodeCommit，请查看中的信息[故障排除](troubleshooting.md)。

## 步骤 3：创建 Git 凭据，以便通过 HTTPS 连接到 CodeCommit
<a name="setting-up-gc-iam"></a>

安装 Git 后，在 IAM 中为您的 IAM 用户创建 Git 凭证。

**要为设置 HTTPS Git 凭证 CodeCommit**

1. 登录 AWS 管理控制台 并打开 IAM 控制台，网址为[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。

   请务必以 IAM 用户身份登录，该用户将创建并使用 Git 证书进行连接 CodeCommit。

1. 在 IAM 控制台的导航窗格中，选择**用户**，然后从用户列表中选择您的 IAM 用户。
**注意**  
您可以在 “**我的安全 CodeCommit 证书” 中直接查看和管理您的证书**。有关更多信息，请参阅 [查看和管理您的凭证](setting-up.md#setting-up-view-credentials)。

1. 在用户详细信息页面上，选择**安全证书**选项卡，然后在的 **HTTPS Git 凭据**中 AWS CodeCommit，选择**生成**。  
![\[在 IAM 控制台中生成 Git 凭证\]](http://docs.aws.amazon.com/zh_cn/codecommit/latest/userguide/images/codecommit-iam-gc1.png)
**注意**  
您无法为 Git 凭证选择自己的用户名或密码。有关更多信息，请参阅将 [Git 凭据和 HTTPS 与一起使用 CodeCommit](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_ssh-keys.html#git-credentials-code-commit)。

1. 通过以下两种方式之一复制 IAM 为您生成的用户名和密码：显示这些信息，然后将其复制并粘贴到本地计算机上安全的文件中；或选择**下载凭证)**，将这些信息下载为 .CSV 文件。您需要该信息才能连接到 CodeCommit。  
![\[从 IAM 控制台下载 Git 凭证\]](http://docs.aws.amazon.com/zh_cn/codecommit/latest/userguide/images/codecommit-iam-gc2.png)

   保存您的凭证后，选择 **Close**。
**重要**  
这是您保存该用户名和密码的唯一机会。如果您未保存它们，可以从 IAM 控制台复制用户名，但无法查找密码。此时，您必须重置密码，然后保存它。

## 步骤 4：Connect 连接到 CodeCommit 控制台并克隆存储库
<a name="setting-up-gc-connect-console"></a>

如果管理员已将 CodeCommit 存储库的名称和连接详细信息发送给您，您可以跳过该步骤并直接克隆存储库。

**连接到存储 CodeCommit 库**

1. 在 [https://console.aws.amazon.com/codesuite/codemmit](https://console.aws.amazon.com/codesuite/codecommit/home) /home 打开 CodeCommit 控制台。

1. 在区域选择器中，选择存储库的创建 AWS 区域 位置。存储库特定于 AWS 区域。有关更多信息，请参阅 [区域和 Git 连接端点](regions.md)。

1. 从列表中找到您要连接的存储库并选择此存储库。选择 **Clone URL (克隆 URL)**，然后选择克隆或连接到存储库时要使用的协议。此时将复制克隆 URL。
   + 如果您使用的是 IAM 用户的 Git 凭证或 AWS CLI附带的凭证助手，请复制 HTTPS URL。
   + 如果您在本地计算机上使用 **git-remote-codecommit** 命令，请复制 HTTPS (GRC) URL。
   + 如果您与 IAM 用户一起使用 SSH public/private 密钥对，请复制 SSH 网址。
**注意**  
 如果您看到的是**欢迎**页面而不是存储库列表，则说明您登录的 AWS 区域 位置中没有与您的 AWS 账户关联的存储库。要创建存储库，请参阅[创建 AWS CodeCommit 存储库](how-to-create-repository.md)或按照[Git 入门和 CodeCommit](getting-started.md)教程中的步骤进行操作。

1. 打开终端、命令行或 Git shell。使用复制的 HTTPS 克隆 URL 运行 **git clone** 命令以克隆存储库。例如，要将名为的存储库克隆*MyDemoRepo*到*my-demo-repo*位于美国东部（俄亥俄州）地区的本地存储库，请执行以下操作：

   ```
   git clone https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo my-demo-repo
   ```

   在第一次连接时，系统会提示您提供该存储库的用户名和密码。根据本地计算机的配置，操作系统的凭证管理系统、您的 Git 版本的凭证管理器实用程序（例如，Windows 版 Git 中包含的 Git Credential Manager）、您的 IDE 或 Git 本身都可能会产生该提示。输入在 IAM 中为 Git 凭证（您在[步骤 3：创建 Git 凭据，以便通过 HTTPS 连接到 CodeCommit](#setting-up-gc-iam)中创建的凭证）生成的用户名和密码。根据您的操作系统及其他软件，该信息可能保存在凭证存储或凭证管理实用程序中。如果是这样，除非您在 IAM 中更改密码、停用 Git 凭证或删除 Git 凭证，否则应该不会再出现提示。

   如果您没有在本地计算机上配置凭证存储或凭证管理实用程序，则可以安装一个。有关 Git 及其管理凭证的更多信息，请参阅 Git 文档中的[凭证存储](https://git-scm.com/book/en/v2/Git-Tools-Credential-Storage)。

   有关更多信息，请参阅[通过克隆 CodeCommit 存储库来连接存储库](how-to-connect.md#how-to-connect-http)和[创建提交](how-to-create-commit.md)。

## 后续步骤
<a name="setting-up-gc-next-step"></a>

您已满足先决条件。按照中的步骤[入门 CodeCommit ](getting-started-cc.md)开始使用 CodeCommit。

要了解如何创建和推送您的第一个提交，请参阅[在中创建提交 AWS CodeCommit](how-to-create-commit.md)。如果您刚刚接触 Git，您可能还需要查看[哪里可以找到有关 Git 的更多信息？](welcome.md#welcome-get-started-with-git)和[Git 入门和 AWS CodeCommit](getting-started.md)中的信息。

# 使用的 HTTPS 连接 AWS CodeCommit 的设置步骤 git-remote-codecommit
<a name="setting-up-git-remote-codecommit"></a>

如果您想 CodeCommit 使用根账户、联合访问或临时证书进行连接，则应使用设置访问权限**git-remote-codecommit**。此实用程序提供了一种通过扩展 Git 从 CodeCommit 存储库中推送和提取代码的简单方法。这是支持使用联合访问、身份提供程序和临时凭证建立连接的推荐方法。要向联合身份分配权限，您可以创建角色并为角色定义权限。当联合身份进行身份验证时，该身份将与角色相关联并被授予由此角色定义的权限。有关用于联合身份验证的角色的信息，请参阅《IAM 用户指南》**中的[针对第三方身份提供者创建角色（联合身份验证）](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp.html)。如果您使用 IAM Identity Center，则需要配置权限集。为控制您的身份在进行身份验证后可以访问的内容，IAM Identity Center 将权限集与 IAM 中的角色相关联。有关权限集的信息，请参阅《AWS IAM Identity Center 用户指南》**中的[权限集](https://docs.aws.amazon.com/singlesignon/latest/userguide/permissionsetsconcept.html)。

您还可以将 **git-remote-codecommit** 与 IAM 用户结合使用。与其他 HTTPS 连接方法不同，**git-remote-codecommit** 不要求为用户设置 Git 凭证。

**注意**  
有些 IDEs 不支持使用的克隆 URL 格式`git-remote-codecommit`。您可能需要手动将存储库克隆到本地计算机，然后才能在您首选的 IDE 中使用它们。有关更多信息，请参阅 [故障排除 git-remote-codecommit和 AWS CodeCommit](troubleshooting-grc.md)。

编写这些过程时假设您有一个 Amazon Web Services 账户，在中创建了至少一个存储库 CodeCommit，并且在连接到 CodeCommit 存储库时使用具有托管策略的 IAM 用户。有关如何为联合身份用户和其他轮换凭证类型配置访问权限的信息，请参阅[使用轮换凭证连接到 AWS CodeCommit 存储库](temporary-access.md)。

**Topics**
+ [步骤 0：安装必备组件 git-remote-codecommit](#setting-up-git-remote-codecommit-prereq)
+ [步骤 1：的初始配置 CodeCommit](#setting-up-git-remote-codecommit-account)
+ [第 2 步：安装 git-remote-codecommit](#setting-up-git-remote-codecommit-install)
+ [步骤 3：Connect 连接到 CodeCommit 控制台并克隆存储库](#setting-up-git-remote-codecommit-connect-console)
+ [后续步骤](#setting-up-git-remote-codecommit-next-step)

## 步骤 0：安装必备组件 git-remote-codecommit
<a name="setting-up-git-remote-codecommit-prereq"></a>

您必须在本地计算机上安装一些先决条件，然后才能使用 **git-remote-codecommit**。这些方法包括：
+ 支持的 Python 版本。有关支持的 Python 版本的更多信息，请参阅[git-remote-codecommit](https://pypi.org/project/git-remote-codecommit/)。

  有关设置和使用的更多信息 git-remote-codecommit，请参阅[使用的 HTTPS 连接 AWS CodeCommit 的设置步骤 git-remote-codecommit](#setting-up-git-remote-codecommit)。
+ Git

**注意**  
在 Windows 上安装 Python 时，请确保选择了将 Python 添加到路径的选项。

**git-remote-codecommit** 需要 pip 版本 9.0.3 或更高版本。要检查您的 pip 版本，请打开终端或命令行并运行以下命令：

```
pip --version
```

您可以运行以下两个命令将您的 pip 版本更新到最新版本：

```
curl -O https://bootstrap.pypa.io/get-pip.py
python3 get-pip.py --user
```

要处理 CodeCommit 存储库中的文件、提交和其他信息，必须在本地计算机上安装 Git。 CodeCommit 支持 Git 版本 1.7.9 及更高版本。Git 版本 2.28 支持为初始提交配置分支名称。我们建议使用最新版本的 Git。

要安装 Git，建议您访问 [Git 下载](http://git-scm.com/downloads)等网站。

**注意**  
Git 是一个不断发展的平台，会定期进行更新。有时，功能更改可能会影响其工作方式 CodeCommit。如果您在使用特定版本的 Git 时遇到问题 CodeCommit，请查看中的信息[故障排除](troubleshooting.md)。

## 步骤 1：的初始配置 CodeCommit
<a name="setting-up-git-remote-codecommit-account"></a>

请按照以下步骤创建 IAM 用户、使用适当的策略对其进行配置、获取访问密钥和秘密密钥，以及安装和配置 AWS CLI。

**创建和配置用于访问的 IAM 用户 CodeCommit**

1. 前往 [http://aws.amazon.com](https://aws.amazon.com/)，并选择**注册**，创建一个 Amazon Web Services 账户。

1. 创建 IAM 用户或使用您的 Amazon Web Services 账户中的现有用户。确保您具有与该 IAM 用户关联的访问密钥 ID 和秘密访问密钥。有关更多信息，请参阅[在 Amazon Web Services 账户中创建 IAM 用户](https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_SettingUpUser.html)。
**注意**  
CodeCommit 要求 AWS Key Management Service。如果您使用的是现有的 IAM 用户，请确保该用户没有明确拒绝所要求的 AWS KMS 操作的策略 CodeCommit。有关更多信息，请参阅 [AWS KMS 和加密](encryption.md)。

1. 登录 AWS 管理控制台 并打开 IAM 控制台，网址为[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。

1. **在 IAM 控制台的导航窗格中，选择 Users，然后选择要配置 CodeCommit 访问权限的 IAM 用户。**

1. 在 **Permissions** 选项卡上，选择 **Add Permissions**。

1. 在 **Grant permissions (授予权限)** 中，选择 **Attach existing policies directly (直接附加现有策略)**。

1. 从策略列表中，选择**AWSCodeCommitPowerUser**或其他托管策略进行 CodeCommit 访问。有关更多信息，请参阅 [AWS 的托管策略 CodeCommit](security-iam-awsmanpol.md)。

   选择要附加的策略后，选择**下一步：审核**以审核要附加到 IAM 用户的策略列表。如果列表正确，选择 **Add permissions**。

    有关 CodeCommit 托管策略以及与其他群组和用户共享仓库访问权限的更多信息，请参阅[共享存储库](how-to-share-repository.md)和[的身份验证和访问控制 AWS CodeCommit](auth-and-access-control.md)。

**要安装和配置 AWS CLI**

1. 在您的本地计算机上，下载并安装 AWS CLI。这是通过命令行与交互 CodeCommit 的先决条件。我们建议您安装 AWS CLI 版本 2。它是的最新主要版本 AWS CLI ，支持所有最新功能。它是唯一支持使用根账户、联合访问权限或临时证书的版本**git-remote-codecommit**。 AWS CLI 

   有关更多信息，请参阅[使用 AWS 命令行界面进行设置](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-set-up.html)。
**注意**  
CodeCommit 仅适用于 1.7.38 及更高 AWS CLI 版本。作为最佳实践，请安装或升级 AWS CLI 到可用的最新版本。要确定 AWS CLI 您安装了哪个版本，请运行**aws --version**命令。  
要将旧版本的升级 AWS CLI 到最新版本，请参阅[安装 AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/installing.html)。

1. 运行此命令以验证的 CodeCommit 命令 AWS CLI 是否已安装。

   ```
   aws codecommit help
   ```

   此命令返回 CodeCommit 命令列表。

1.  AWS CLI 使用**configure**命令配置配置文件，如下所示：。

   ```
   aws configure
   ```

   出现提示时，指定要与之 AWS 配合使用的 IAM 用户的访问 AWS 密钥和私有访问密钥 CodeCommit。另外，请务必指定存储库的 AWS 区域 存在位置，例如`us-east-2`。系统提示指定默认输出格式时，指定 `json`。例如，如果您正在为 IAM 用户配置相关配置文件：

   ```
   AWS Access Key ID [None]: Type your IAM user AWS access key ID here, and then press Enter
   AWS Secret Access Key [None]: Type your IAM user AWS secret access key here, and then press Enter
   Default region name [None]: Type a supported region for CodeCommit here, and then press Enter
   Default output format [None]: Type json here, and then press Enter
   ```

   有关创建和配置用于的配置文件的更多信息 AWS CLI，请参阅以下内容：
   + [命名配置文件](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html)
   + [在中使用 IAM 角色 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-role.html)
   + [设置命令](https://docs.aws.amazon.com/cli/latest/reference/set.html)
   + [使用轮换凭证连接到 AWS CodeCommit 存储库](temporary-access.md)

   要连接到存储库或其他存储库中的资源 AWS 区域，必须 AWS CLI 使用默认的区域名称重新配置。支持的默认区域名称 CodeCommit 包括：
   + us-east-2
   + us-east-1
   + eu-west-1
   + us-west-2
   + ap-northeast-1
   + ap-southeast-1
   + ap-southeast-2
   + ap-southeast-3
   + me-central-1
   + eu-central-1
   + ap-northeast-2
   + sa-east-1
   + us-west-1
   + eu-west-2
   + ap-south-1
   + ap-south-1
   + ca-central-1
   + us-gov-west-1
   + us-gov-east-1
   + eu-north-1
   + ap-east-1
   + me-south-1
   + cn-north-1
   + cn-northwest-1
   + eu-south-1
   + ap-northeast-3
   + af-south-1
   + il-central-1

   有关 CodeCommit 和的更多信息 AWS 区域，请参阅[区域和 Git 连接端点](regions.md)。有关 IAM、访问密钥和秘密密钥的更多信息，请参阅‭[如何获取凭证？](https://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_Introduction.html#IAM_SecurityCredentials)和[管理 IAM 用户的访问密钥](https://docs.aws.amazon.com/IAM/latest/UserGuide/ManagingCredentials.html)。有关 AWS CLI 和配置文件的更多信息，请参阅[命名配置文件](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html)。

## 第 2 步：安装 git-remote-codecommit
<a name="setting-up-git-remote-codecommit-install"></a>

请按照以下步骤安装 **git-remote-codecommit**。

**要安装 git-remote-codecommit**

1. 在终端或命令行中，运行以下命令：

   ```
   pip install git-remote-codecommit
   ```
**注意**  
根据操作系统和配置的不同，您可能需要以提升权限（例如 sudo）运行此命令，或使用 --user 参数安装到不需要特殊权限的目录，例如您的当前用户账户。例如，在运行 Linux、macOS 或 Unix 的计算机上：  

   ```
   sudo pip install git-remote-codecommit
   ```
在运行 Windows 的计算机上：  

   ```
   pip install --user git-remote-codecommit
   ```

1. 监控安装过程，直到您看到类似于以下内容的成功消息。

## 步骤 3：Connect 连接到 CodeCommit 控制台并克隆存储库
<a name="setting-up-git-remote-codecommit-connect-console"></a>

如果管理员已经向您发送了**git-remote-codecommit**用于 CodeCommit 存储库的克隆 URL，则可以跳过与控制台的连接，直接克隆存储库。

**连接到存储 CodeCommit 库**

1. 在 [https://console.aws.amazon.com/codesuite/codemmit](https://console.aws.amazon.com/codesuite/codecommit/home) /home 打开 CodeCommit 控制台。

1. 在区域选择器中，选择存储库的创建 AWS 区域 位置。存储库特定于 AWS 区域。有关更多信息，请参阅 [区域和 Git 连接端点](regions.md)。

1. 从列表中找到您要连接的存储库并选择此存储库。选择 **Clone URL (克隆 URL)**，然后选择克隆或连接到存储库时要使用的协议。此时将复制克隆 URL。
   + 如果您使用的是 IAM 用户的 Git 凭证或 AWS CLI附带的凭证助手，请复制 HTTPS URL。
   + 如果您在本地计算机上使用 **git-remote-codecommit** 命令，请复制 HTTPS (GRC) URL。
   + 如果您与 IAM 用户一起使用 SSH public/private 密钥对，请复制 SSH 网址。
**注意**  
 如果您看到的是**欢迎**页面而不是存储库列表，则说明您登录的 AWS 区域 位置中没有与您的 AWS 账户关联的存储库。要创建存储库，请参阅[创建 AWS CodeCommit 存储库](how-to-create-repository.md)或按照[Git 入门和 CodeCommit](getting-started.md)教程中的步骤进行操作。

1. 在终端或命令提示符处，使用 **git clone** 命令克隆存储库。如果您创建了命名 AWS CLI 配置文件，请使用您复制的 HTTPS git-remote-codecommit 网址和配置文件名称。如果未指定配置文件，则该命令将采用默认配置文件。这将在运行命令的目录的子目录中创建本地存储库。例如，要将名为 *MyDemoRepo* 的存储库克隆成名为 *my-demo-repo* 的本地存储库，请运行以下命令：

   ```
   git clone codecommit://MyDemoRepo my-demo-repo
   ```

   要使用名为以下的配置文件克隆同一个存储库*CodeCommitProfile*：

   ```
   git clone codecommit://CodeCommitProfile@MyDemoRepo my-demo-repo
   ```

   要克隆与配置文件中配置的存储库 AWS 区域 不同的存储库，请添加 AWS 区域 名称。例如：

   ```
   git clone codecommit::ap-northeast-1://MyDemoRepo my-demo-repo
   ```

## 后续步骤
<a name="setting-up-git-remote-codecommit-next-step"></a>

您已满足先决条件。按照中的步骤[入门 CodeCommit ](getting-started-cc.md)开始使用 CodeCommit。

要了解如何创建和推送您的第一个提交，请参阅[在中创建提交 AWS CodeCommit](how-to-create-commit.md)。如果您刚刚接触 Git，您可能还需要查看[哪里可以找到有关 Git 的更多信息？](welcome.md#welcome-get-started-with-git)和[Git 入门和 AWS CodeCommit](getting-started.md)中的信息。

# 使用 Git 凭证从开发工具设置连接
<a name="setting-up-ide"></a>

在 IAM 控制台中为 AWS CodeCommit 配置 Git 凭证后，您可以在支持 Git 凭证的任何开发工具中使用这些凭证。例如，您可以在 AWS Cloud9、Visual Studio、Xcode、IntelliJ 或集成了 Git 凭证的任意集成式开发环境（IDE）中配置对您的 CodeCommit 存储库的访问。配置访问后，您可以编辑代码、提交更改并从 IDE 或其他开发工具直接推送。

**注意**  
如果您使用联合访问、临时凭证或 Web 身份提供程序访问 CodeCommit 存储库，则无法使用 Git 凭证。我们建议您使用 `git-remote-codecommit` 命令设置本地计算机。但是，并非所有 IDE 都与 Git 远程辅助程序（如 **git-remote-codecommit**）完全兼容。如果遇到问题，请参阅[故障排除 git-remote-codecommit和 AWS CodeCommit](troubleshooting-grc.md)。

**Topics**
+ [AWS Cloud9 与集成 AWS CodeCommit](setting-up-ide-c9.md)
+ [将 Visual Studio 与 AWS CodeCommit 集成](setting-up-ide-vs.md)

在 IDE 或开发工具提示输入用于连接 CodeCommit 存储库的用户名和密码时，请提供您在 IAM 中创建的**用户名**和**密码**的 Git 凭证。

有关 AWS 区域和 CodeCommit 终端节点的更多信息，请参阅[区域和 Git 连接端点](regions.md)。

您可能还会看到操作系统提示存储用户名和密码。例如，在 Windows 中，应如下所示提供 Git 凭证：

![\[Windows 中的安全提示\]](http://docs.aws.amazon.com/zh_cn/codecommit/latest/userguide/images/codecommit-ide-vs2.png)


有关为特定软件程序或开发工具配置 Git 凭证的信息，请参阅产品文档。

下面是不全面的 IDE 列表。单独提供这些链接以帮助您详细了解这些工具。AWS 对其中任何主题的内容不承担责任。
+ [AWS Cloud9](setting-up-ide-c9.md)  
![\[在 AWS Cloud9 中克隆存储库。\]](http://docs.aws.amazon.com/zh_cn/codecommit/latest/userguide/images/codecommit-ide-c9-clone.png)
+ [Visual Studio](https://www.visualstudio.com/en-us/docs/git/tutorial/creatingrepo#clone-an-existing-git-repo)

  或者，安装 AWS Toolkit for Visual Studio。有关更多信息，请参阅 [将 Visual Studio 与 AWS CodeCommit 集成](setting-up-ide-vs.md)。  
![\[在 Visual Studio 中克隆存储库。\]](http://docs.aws.amazon.com/zh_cn/codecommit/latest/userguide/images/codecommit-ide-vs1.png)
+ [XCode](https://developer.apple.com/library/content/documentation/IDEs/Conceptual/xcode_guide-continuous_integration/PublishYourCodetoaSourceRepository.html)

# AWS Cloud9 与集成 AWS CodeCommit
<a name="setting-up-ide-c9"></a>

您可以使用 AWS Cloud9 对 CodeCommit 存储库中的代码进行更改。 AWS Cloud9 包含一系列工具，可用于编写代码以及构建、运行、测试、调试和发布软件。您可以从 AWS Cloud9 EC2 开发环境中克隆现有存储库、创建存储库、提交代码更改并将其推送到存储库等。 AWS Cloud9 EC2 开发环境通常预先配置有 AWS CLI、Amazon EC2 角色和 Git，因此在大多数情况下，您可以运行一些简单的命令并开始与存储库交互。

要 AWS Cloud9 与一起使用 CodeCommit，您需要满足以下条件：
+ 在亚马逊 Linux 上运行的 AWS Cloud9 EC2 开发环境。
+  AWS Cloud9 IDE 将在 Web 浏览器中打开。
+ 具有其中一个 CodeCommit 托管策略和一个托 AWS Cloud9 管策略的 IAM 用户。

  有关更多信息，请参阅[AWS 的托管策略 CodeCommit](security-iam-awsmanpol.md)和[了解并获取您的安全凭证](https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html)。
**注意**  
本主题介绍如何设置与 Internet 的集成 CodeCommit 以及 AWS Cloud9 通过互联网进行常规访问的集成。您可以在隔离的环境 AWS Cloud9 中设置访问权限 CodeCommit 和访问权限，但这需要额外的步骤。有关更多信息，请参阅:  
[AWS CodeCommit 与接口 VPC 终端节点一起使用](codecommit-and-interface-VPC.md)
[使用访问无入口的 Amazon EC2 实例 AWS Systems Manager](https://docs.aws.amazon.com/cloud9/latest/user-guide/ec2-ssm.html)
[使用共享环境](https://docs.aws.amazon.com/cloud9/latest/user-guide/share-environment.html)
[与其他账户共享 VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-sharing.html)
[博客文章：隔离对环境的网络访问 AWS Cloud9](https://aws.amazon.com/blogs/security/isolating-network-access-to-your-aws-cloud9-environments/)

**Topics**
+ [步骤 1：创建 AWS Cloud9 开发环境](#setting-up-ide-c9-connect)
+ [步骤 2：在您的 AWS Cloud9 EC2 开发环境中配置 AWS CLI 凭证助手](#setting-up-ide-c9-credentials)
+ [步骤 3：将 CodeCommit 存储库克隆到您 AWS Cloud9 的 EC2 开发环境中](#setting-up-ide-c9-checkout)
+ [后续步骤](#setting-up-ide-c9-next)

## 步骤 1：创建 AWS Cloud9 开发环境
<a name="setting-up-ide-c9-connect"></a>

AWS Cloud9 将您的开发环境托管在 Amazon EC2 实例上。这是最简单的集成方式，因为您可以使用实例的 AWS 托管临时证书连接到您的 CodeCommit 存储库。如果您想改用自己的服务器，请参阅 [AWS Cloud9 用户指南](https://docs.aws.amazon.com/cloud9/latest/user-guide/)。

**创建 AWS Cloud9 环境**

1. 以 AWS 您配置的 IAM 用户身份登录并打开 AWS Cloud9 控制台。

1. 在 AWS Cloud9 控制台中，选择**创建环境**。

1. 在**步骤 1: 命名环境**中，输入环境的名称和可选描述，然后选择**下一步**。

1. 在**步骤 2: 配置设置**中，配置您的环境，如下所示：
   + 在 **Environment type** 中，选择 **Create a new instance for environment (EC2)**。
   + 在 **Instance type** 中，为开发环境选择适当的实例类型。例如，如果您只探索该服务，则可以选择默认值 t2.micro。如果您打算将此环境用于开发工作，请选择更大的实例类型。
   + 除非您有理由选择其他默认设置（例如，您的组织使用特定的 VPC，或者您的 Amazon Web Services 账户未 VPCs 配置任何设置），然后选择**下一步**。

1. 在**步骤 3: 审核** 中，审查您的设置。如果您需要进行任何更改，请选择 **Previous step**。否则，请选择 **Create environment**。

   创建一个环境，首次连接到此环境需要几分钟的时间。如果连接所花时间似乎太长，请参阅**《AWS Cloud9 用户指南》中的[故障排除](https://docs.aws.amazon.com/cloud9/latest/user-guide/troubleshooting.html)。

1. 在连接到您的环境后，请检查是否已安装 Git，并通过在终端窗口中运行 **git --version** 命令查看它是否为受支持的版本。

   如果未安装 Git，或者它不是支持的版本，请安装支持的版本。 CodeCommit 支持 Git 版本 1.7.9 及更高版本。Git 版本 2.28 支持为初始提交配置分支名称。我们建议使用最新版本的 Git。要安装 Git，建议您访问 [Git 下载](http://git-scm.com/downloads)等网站。
**提示**  
根据环境的操作系统，您也许能够使用带 **sudo** 选项的 **yum** 命令安装更新，包括 Git。例如，管理命令序列可能与以下三条命令类似：  

   ```
   sudo yum -y update
   sudo yum -y install git
   git --version
   ```

    

1. 通过运行 **git config** 命令配置要与 Git 提交关联的用户名和电子邮件。例如：

   ```
       git config --global user.name "Mary Major"
       git config --global user.email mary.major@example.com
   ```

## 步骤 2：在您的 AWS Cloud9 EC2 开发环境中配置 AWS CLI 凭证助手
<a name="setting-up-ide-c9-credentials"></a>

创建 AWS Cloud9 环境后，您可以配置 AWS CLI 凭证助手来管理 CodeCommit 存储库连接的凭据。 AWS Cloud9 开发环境附带与您的 IAM 用户关联的 AWS 托管临时证书。您可以将这些凭据与凭证助手一起使用。 AWS CLI 

1. 打开终端窗口并运行以下命令来验证是否安装了 AWS CLI ：

   ```
   aws --version
   ```

   如果成功，此命令将返回当前安装的版本的 AWS CLI。要将旧版本的升级 AWS CLI 到最新版本，请参阅[安装 AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/installing.html)。

1. 在终端上，运行以下命令为 HTTPS 连接配置 AWS CLI 凭证助手：

   ```
   git config --global credential.helper '!aws codecommit credential-helper $@'
   git config --global credential.UseHttpPath true
   ```
**提示**  
该凭证助手将为开发环境使用默认的 Amazon EC2 实例角色。如果您打算使用开发环境连接到未托管在中的 CodeCommit存储库，请配置与这些存储库的 SSH 连接，或者将本地`.gitconfig`文件配置为在连接到其他存储库时使用备用凭证管理系统。有关更多信息，请参阅 Git 网站上的 [Git 工具 - 凭证存储](https://git-scm.com/book/en/v2/Git-Tools-Credential-Storage)。

## 步骤 3：将 CodeCommit 存储库克隆到您 AWS Cloud9 的 EC2 开发环境中
<a name="setting-up-ide-c9-checkout"></a>

配置 AWS CLI 凭证助手后，您可以将 CodeCommit存储库克隆到该助手上。然后，您便可以开始使用代码。

1. 在终端，运行 **git clone** 命令，并指定要克隆的存储库的 HTTPS 克隆 URL。例如，如果您要克隆一个名 MyDemoRepo 为美国东部（俄亥俄州）地区的存储库，则需要输入：

   ```
   git clone https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo
   ```
**提示**  
通过选择 “克隆 URL”，可以在 CodeCommit 控制台中找到仓库的**克隆 URL**。

1. 在克隆完成后，在侧面导航中展开存储库的文件夹，然后选择要打开的文件以进行编辑。或者，选择**文件**，然后选择**新文件**以创建文件。

1. 在完成文件的编辑和创建后，请在终端窗口中，将目录更改为您的克隆存储库，然后提交和推送更改。例如，如果您添加了一个名为*MyFile.py*：的新文件

   ```
   cd MyDemoRepo
   git commit -a MyFile.py
   git commit -m "Added a new file with some code improvements"
   git push
   ```

## 后续步骤
<a name="setting-up-ide-c9-next"></a>

有关更多信息，请参阅[AWS Cloud9 用户指南](https://docs.aws.amazon.com/cloud9/latest/user-guide/welcome.html)和[CodeCommit 示例 AWS Cloud9](https://docs.aws.amazon.com/cloud9/latest/user-guide/sample-codecommit.html)。有关将 Git 与配合使用的更多信息 CodeCommit，请参阅[Git 入门和 AWS CodeCommit](getting-started.md)。

# 将 Visual Studio 与 AWS CodeCommit 集成
<a name="setting-up-ide-vs"></a>

您可以使用 Visual Studio 在 CodeCommit 存储库中进行代码更改。AWS Toolkit for Visual Studio 现在包含的功能可让您在 Visual Studio 中工作时更轻松、更方便地使用 CodeCommit。Toolkit for Visual Studio 集成可以与 Git 凭证和 IAM 用户结合使用。您可以克隆现有存储库、创建存储库、向存储库提交和推送代码更改等。

**重要**  
Toolkit for Visual Studio 只能在 Windows 操作系统上安装。如果您要寻找有关使用 Visual Studio Code 的信息，请参阅 [AWS Toolkit for Visual Studio Code](https://docs.aws.amazon.com/toolkit-for-vscode/latest/userguide/welcome.html)。

如果您之前使用过 Toolkit for Visual Studio，可能已经熟悉如何设置包含访问密钥和秘密密钥的 AWS 凭证配置文件。凭证配置文件在 Toolkit for Visual Studio 中用于启用对 AWS 服务 API 的调用（例如，供 Amazon S3 列出桶或供 CodeCommit 列出存储库）。要向 CodeCommit 存储库中拉取和推送代码，您还需要 Git 凭证。如果您没有 Git 凭证，Toolkit for Visual Studio 可以为您生成并应用这些凭证。这可为您节省大量时间。

要使用 Visual Studio 和 CodeCommit，您需要：
+ 已配置一组有效凭证（访问密钥和秘密密钥）的 IAM 用户。此 IAM 用户还应该满足以下条件：

  已对其应用某个 CodeCommit 托管策略以及 IAMSelfManageServiceSpecificCredentials 托管策略。

  或

  如果 IAM 用户已配置 Git 凭证，则需要一个 CodeCommit 托管策略或等效权限。

   有关更多信息，请参阅[AWS 的托管策略 CodeCommit](security-iam-awsmanpol.md)和[了解并获取您的安全凭证](https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html)。
+ AWS Toolkit for Visual Studio 安装在您已安装了 Visual Studio 的计算机上。有关更多信息，请参阅[设置 AWS Toolkit for Visual Studio](https://docs.aws.amazon.com/AWSToolkitVS/latest/UserGuide/getting-set-up.html)。

有关使用 AWS Toolkit for Visual Studio 和 CodeCommit 的更多信息，请参阅 《Toolkit for Visual Studio 用户指南》中的[使用 AWS CodeCommit 和 Visual Studio Team Explorer](https://docs.aws.amazon.com/toolkit-for-visual-studio/latest/user-guide/using-aws-codecommit-with-team-explorer.html)。**

# 为不使用 SSH 用户设置的 AWS CLI
<a name="setting-up-without-cli"></a>

如果要对存储库使用 SSH 连接，则 AWS CodeCommit 无需安装即可连接到 AWS CLI。 AWS CLI 包含在您使用和管理 CodeCommit存储库时很有用的命令，但初始设置不需要这些命令。

本主题假定：
+ 您已经为一个 IAM 用户设置了所需的策略或权限， CodeCommit 以及上传密钥所需的**IAMUserSSHKeys**托管策略或等效权限。有关更多信息，请参阅 [使用基于身份的策略（IAM 策略） CodeCommit](auth-and-access-control-iam-identity-based-access-control.md)。
+ 您已有或知道如何创建公有-私有密钥对。我们强烈建议您为 SSH 密钥使用安全密码。
+ 您熟悉 SSH、Git 客户端及其配置文件。
+ （如果您使用的是 Windows）您已安装命令行实用程序，例如模拟 bash shell 的 Git Bash。

如果您需要更多指导，请按照[适用于 Linux、macOS 或 Unix 上的 SSH 连接](setting-up-ssh-unixes.md)或[适用于 Windows 上的 SSH 连接](setting-up-ssh-windows.md)中的说明操作。

**Topics**
+ [步骤 1：将公有密钥关联到 IAM 用户](#setting-up-without-cli-add-key)
+ [第 2 步： CodeCommit 添加到您的 SSH 配置中](#setting-up-without-cli-configure-client)
+ [后续步骤](#setting-up-without-cli-next-step)

## 步骤 1：将公有密钥关联到 IAM 用户
<a name="setting-up-without-cli-add-key"></a>

1. 登录 AWS 管理控制台 并打开 IAM 控制台，网址为[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。

1. 在 IAM 控制台的导航窗格中，选择**用户**，然后从用户列表中选择您的 IAM 用户。

1. 在 **Security Credentials** 选项卡上选择 **Upload SSH public key**。

1. 将 SSH 公有密钥的内容粘贴到该字段中，然后选择 **Upload SSH Key (上传 SSH 密钥)**。
**提示**  
公有-私有密钥对必须为 SSH-2 RSA、采用 OpenSSH 格式且包含 2048 位。该密钥看上去类似于以下内容：  

   ```
   ssh-rsa EXAMPLE-AfICCQD6m7oRw0uXOjANBgkqhkiG9w0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJB
   gNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb2
   5zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wHhc
   NMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAw
   DgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDAS=EXAMPLE user-name@ip-192-0-2-137
   ```
IAM 只接受 OpenSSH 格式的公有密钥。如果您以其他格式提供自己的公有密钥，系统会显示一条错误消息，指出该密钥格式无效。

1. 复制 SSH 密钥 ID（例如*APKAEIBAERJR2EXAMPLE*）并关闭控制台。  
![\[IAM 控制台中的 SSH 密钥 ID\]](http://docs.aws.amazon.com/zh_cn/codecommit/latest/userguide/images/codecommit-ssh-key-id-iam.png)

## 第 2 步： CodeCommit 添加到您的 SSH 配置中
<a name="setting-up-without-cli-configure-client"></a>

1. 在终端（Linux、macOS 或 Unix）或 bash 仿真器 (Windows) 中，通过键入 **cat>> \$1/.ssh/config** 来编辑 SSH 配置文件：

   ```
   Host git-codecommit.*.amazonaws.com
   User Your-SSH-Key-ID, such as APKAEIBAERJR2EXAMPLE
   IdentityFile Your-Private-Key-File, such as ~/.ssh/codecommit_rsa or ~/.ssh/id_rsa
   ```
**提示**  
如果您有多个 SSH 配置，请确保在内容前后包含空白行。保存文件 (同时按 `Ctrl` 和 `d` 键)。

1. 运行下面的命令测试您的 SSH 配置：

   ```
   ssh git-codecommit.us-east-2.amazonaws.com
   ```

   出现提示时，输入 SSH 密钥文件的密码。如果一切配置正确，您应会看到下面的成功消息：

   ```
   You have successfully authenticated over SSH. You can use Git to interact with CodeCommit. 
   ```

## 后续步骤
<a name="setting-up-without-cli-next-step"></a>

您已满足先决条件。按照中的步骤[入门 CodeCommit ](getting-started-cc.md)开始使用 CodeCommit。

要连接到存储库，请按照[连接存储库](how-to-connect.md)中的步骤操作。要创建存储库，请按照[创建 存储库](how-to-create-repository.md)中的步骤操作。

# 在 Linux、macOS 或 Unix 上通过 SSH 连接 AWS CodeCommit 存储库的设置步骤
<a name="setting-up-ssh-unixes"></a>

在首次连接之前，必须完成一些初始配置步骤。 CodeCommit 设置计算机和 AWS 配置文件后，您可以连接到存储库并将该 CodeCommit存储库克隆到您的计算机（也称为创建本地存储库）。如果您刚刚接触 Git，我们建议您查看[哪里可以找到有关 Git 的更多信息？](welcome.md#welcome-get-started-with-git)中的信息。

**Topics**
+ [步骤 1：的初始配置 CodeCommit](#setting-up-ssh-unixes-account)
+ [步骤 2：安装 Git](#setting-up-ssh-unixes-install-git)
+ [第 3 步：在 Linux、macOS 或 Unix 上配置凭证](#setting-up-ssh-unixes-keys)
+ [步骤 4：Connect 连接到 CodeCommit 控制台并克隆存储库](#setting-up-ssh-unixes-connect-console)
+ [后续步骤](#setting-up-ssh-unixes-next-step)

## 步骤 1：的初始配置 CodeCommit
<a name="setting-up-ssh-unixes-account"></a>

按照以下步骤设置 Amazon Web Services 账户、创建 IAM 用户并配置访问权限 CodeCommit。

**创建和配置用于访问的 IAM 用户 CodeCommit**

1. 前往 [http://aws.amazon.com](https://aws.amazon.com/)，并选择**注册**，创建一个 Amazon Web Services 账户。

1. 创建 IAM 用户或使用您的 Amazon Web Services 账户中的现有用户。确保您具有与该 IAM 用户关联的访问密钥 ID 和秘密访问密钥。有关更多信息，请参阅[在 Amazon Web Services 账户中创建 IAM 用户](https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_SettingUpUser.html)。
**注意**  
CodeCommit 要求 AWS Key Management Service。如果您使用的是现有的 IAM 用户，请确保该用户没有明确拒绝所要求的 AWS KMS 操作的策略 CodeCommit。有关更多信息，请参阅 [AWS KMS 和加密](encryption.md)。

1. 登录 AWS 管理控制台 并打开 IAM 控制台，网址为[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。

1. **在 IAM 控制台的导航窗格中，选择 Users，然后选择要配置 CodeCommit 访问权限的 IAM 用户。**

1. 在 **Permissions** 选项卡上，选择 **Add Permissions**。

1. 在 **Grant permissions (授予权限)** 中，选择 **Attach existing policies directly (直接附加现有策略)**。

1. 从策略列表中，选择**AWSCodeCommitPowerUser**或其他托管策略进行 CodeCommit 访问。有关更多信息，请参阅 [AWS 的托管策略 CodeCommit](security-iam-awsmanpol.md)。

   选择要附加的策略后，选择**下一步：审核**以审核要附加到 IAM 用户的策略列表。如果列表正确，选择 **Add permissions**。

    有关 CodeCommit 托管策略以及与其他群组和用户共享仓库访问权限的更多信息，请参阅[共享存储库](how-to-share-repository.md)和[的身份验证和访问控制 AWS CodeCommit](auth-and-access-control.md)。

**注意**  
如果要在中使用 AWS CLI 命令 CodeCommit，请安装 AWS CLI。有关更多信息，请参阅 [命令行参考](cmd-ref.md)。

## 步骤 2：安装 Git
<a name="setting-up-ssh-unixes-install-git"></a>

要处理 CodeCommit 存储库中的文件、提交和其他信息，必须在本地计算机上安装 Git。 CodeCommit 支持 Git 版本 1.7.9 及更高版本。Git 版本 2.28 支持为初始提交配置分支名称。我们建议使用最新版本的 Git。

要安装 Git，建议您访问 [Git 下载](http://git-scm.com/downloads)等网站。

**注意**  
Git 是一个不断发展的平台，会定期进行更新。有时，功能更改可能会影响其工作方式 CodeCommit。如果您在使用特定版本的 Git 时遇到问题 CodeCommit，请查看中的信息[故障排除](troubleshooting.md)。

## 第 3 步：在 Linux、macOS 或 Unix 上配置凭证
<a name="setting-up-ssh-unixes-keys"></a>

### SSH 和 Linux、macOS 或 Unix：为 Git 设置公钥和私钥以及 CodeCommit
<a name="setting-up-ssh-unixes-keys-unixes"></a>

**要为 Git 设置公钥和私钥 CodeCommit**

1. 在本地计算机上的终端中，运行 **ssh-keygen** 命令，并按照说明将文件保存到您的配置文件的 .ssh 目录中。
**注意**  
请务必与系统管理员确认应将密钥文件存储在何处以及应使用何种文件命名模式。

   例如：

   ```
   $ ssh-keygen
   
   Generating public/private rsa key pair.
   Enter file in which to save the key (/home/user-name/.ssh/id_rsa): Type /home/your-user-name/.ssh/ and a file name here, for example /home/your-user-name/.ssh/codecommit_rsa
   
   Enter passphrase (empty for no passphrase): <Type a passphrase, and then press Enter>
   Enter same passphrase again: <Type the passphrase again, and then press Enter>
   
   Your identification has been saved in /home/user-name/.ssh/codecommit_rsa.
   Your public key has been saved in /home/user-name/.ssh/codecommit_rsa.pub.
   The key fingerprint is:
   45:63:d5:99:0e:99:73:50:5e:d4:b3:2d:86:4a:2c:14 user-name@client-name
   The key's randomart image is:
   +--[ RSA 2048]----+
   |        E.+.o*.++|
   |        .o .=.=o.|
   |       . ..  *. +|
   |        ..o . +..|
   |        So . . . |
   |          .      |
   |                 |
   |                 |
   |                 |
   +-----------------+
   ```

   这会生成：
   + *codecommit\$1rsa*文件，即私钥文件。
   + *codecommit\$1rsa.pub*文件，即公钥文件。
**提示**  
默认情况下，**ssh-keygen** 生成 2048 位密钥。您可以使用 -t 和 -b 参数来指定密钥的类型和长度。如果您想要 rsa 格式的 4096 位密钥，可以通过使用以下参数来运行命令：  

   ```
   ssh-keygen -t rsa -b 4096
   ```
有关 SSH 密钥所需的格式和长度的更多信息，请参阅将 [IAM 与配合使用 CodeCommit](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_ssh-keys.html#ssh-keys-code-commit)。

1. 运行以下命令以显示公钥文件 (*codecommit\$1rsa.pub*) 的值：

   ```
   cat ~/.ssh/codecommit_rsa.pub
   ```

   复制该值。其内容类似于以下所示：

   ```
   ssh-rsa EXAMPLE-AfICCQD6m7oRw0uXOjANBgkqhkiG9w0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJB
   gNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb2
   5zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wHhc
   NMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAw
   DgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDAS=EXAMPLE user-name@ip-192-0-2-137
   ```

1. 登录 AWS 管理控制台 并打开 IAM 控制台，网址为[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。
**注意**  
您可以在 “**我的安全 CodeCommit 证书” 中直接查看和管理您的证书**。有关更多信息，请参阅 [查看和管理您的凭证](setting-up.md#setting-up-view-credentials)。

1. 在 IAM 控制台的导航窗格中，选择**用户**，然后从用户列表中选择您的 IAM 用户。

1. 在用户详细信息页面上，选择 **Security Credentials** 选项卡，然后选择 **Upload SSH public key**。

1. 将 SSH 公有密钥的内容粘贴到该字段中，然后选择 **Upload SSH public key**。

1. 复制或保存 **SSH 密钥 ID** 中的信息（例如，*APKAEIBAERJR2EXAMPLE*）。  
![\[IAM 控制台中的 SSH 密钥 ID\]](http://docs.aws.amazon.com/zh_cn/codecommit/latest/userguide/images/codecommit-ssh-key-id-iam.png)
**注意**  
如果您 IDs 上传了多个 SSH 密钥，则密钥将按密钥 ID 的字母顺序列出，而不是按上传日期排列。请确保已复制与正确上传日期关联的密钥 ID。

1. 在本地计算机上，使用文本编辑器在 \$1/.ssh 目录中创建配置文件，然后在该文件中添加以下几行，其中的值*User*是您之前复制的 SSH 密钥 ID：

   ```
   Host git-codecommit.*.amazonaws.com
     User APKAEIBAERJR2EXAMPLE
     IdentityFile ~/.ssh/codecommit_rsa
   ```
**注意**  
如果您为私钥文件指定了其他名称*codecommit\$1rsa*，请务必在此处使用该名称。  
您可以设置对多个 Amazon Web Services 账户中存储库的 SSH 访问权限。有关更多信息，请参阅[对 SSH 连接进行故障排除 AWS CodeCommit](troubleshooting-ssh.md)。

   将该文件命名为 `config` 并保存。

1. 在终端中，运行下面的命令更改配置文件的权限：

   ```
   chmod 600 config
   ```

1. 运行下面的命令测试您的 SSH 配置：

   ```
   ssh git-codecommit.us-east-2.amazonaws.com
   ```

   系统会要求您确认连接，因为 `git-codecommit.us-east-2.amazonaws.com` 尚未包含在您的已知主机文件中。 CodeCommit 服务器指纹作为验证的一部分显示（支持 MD5 或`a9:6d:03:ed:08:42:21:be:06:e1:e0:2a:d1:75:31:5e`对`3lBlW2g5xn/NA2Ck6dyeJIrQOWvn7n8UEs56fG6ZIzQ`于 SHA256）。
**注意**  
CodeCommit 每个 AWS 区域服务器的指纹都是独一无二的。要查看的服务器指纹 AWS 区域，请参阅[的服务器指纹 CodeCommit](regions.md#regions-fingerprints)。

   确认连接后，您应会看到已将服务器添加到已知主机文件的确认消息和成功连接消息。如果您没有看到成功消息，请检查您是否将`config`文件保存在配置为访问的 IAM 用户的 \$1/.ssh 目录中 CodeCommit，以及是否指定了正确的私钥文件。

   如需获取帮助您排查问题的信息，请运行 `ssh` 命令并指定 `-v` 参数：例如：

   ```
   ssh -v git-codecommit.us-east-2.amazonaws.com
   ```

   有关可帮助您解决连接问题的信息，请参阅 [对 SSH 连接进行故障排除 AWS CodeCommit](troubleshooting-ssh.md)。

## 步骤 4：Connect 连接到 CodeCommit 控制台并克隆存储库
<a name="setting-up-ssh-unixes-connect-console"></a>

如果管理员已将 CodeCommit 存储库的名称和连接详细信息发送给您，您可以跳过该步骤并直接克隆存储库。

**连接到存储 CodeCommit 库**

1. 在 [https://console.aws.amazon.com/codesuite/codemmit](https://console.aws.amazon.com/codesuite/codecommit/home) /home 打开 CodeCommit 控制台。

1. 在区域选择器中，选择存储库的创建 AWS 区域 位置。存储库特定于 AWS 区域。有关更多信息，请参阅 [区域和 Git 连接端点](regions.md)。

1. 从列表中找到您要连接的存储库并选择此存储库。选择 **Clone URL (克隆 URL)**，然后选择克隆或连接到存储库时要使用的协议。此时将复制克隆 URL。
   + 如果您使用的是 IAM 用户的 Git 凭证或 AWS CLI附带的凭证助手，请复制 HTTPS URL。
   + 如果您在本地计算机上使用 **git-remote-codecommit** 命令，请复制 HTTPS (GRC) URL。
   + 如果您与 IAM 用户一起使用 SSH public/private 密钥对，请复制 SSH 网址。
**注意**  
 如果您看到的是**欢迎**页面而不是存储库列表，则说明您登录的 AWS 区域 位置中没有与您的 AWS 账户关联的存储库。要创建存储库，请参阅[创建 AWS CodeCommit 存储库](how-to-create-repository.md)或按照[Git 入门和 CodeCommit](getting-started.md)教程中的步骤进行操作。

1. 打开终端。在 /tmp 目录中，使用您复制的 SSH URL，运行 **git clone** 命令以克隆存储库。例如，要将名为的存储库克隆*MyDemoRepo*到*my-demo-repo*位于美国东部（俄亥俄州）地区的本地存储库，请执行以下操作：

   ```
   git clone ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo my-demo-repo
   ```
**注意**  
如果连接测试成功，但克隆命令失败，则可能是您没有访问配置文件所需的权限，或有其他设置与您的配置文件冲突。尝试再次连接，这次在命令中包含 SSH 密钥 ID。例如：  

   ```
   git clone ssh://Your-SSH-Key-ID@git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo my-demo-repo
   ```
有关更多信息，请参阅 [访问错误：已将公有密钥成功上传到 IAM，但在 Linux、macOS 或 Unix 系统上进行连接时失败](troubleshooting-ssh.md#troubleshooting-ae4)。

   有关如何连接存储库的更多信息，请参阅[通过克隆 CodeCommit 存储库来连接存储库](how-to-connect.md#how-to-connect-http)。

## 后续步骤
<a name="setting-up-ssh-unixes-next-step"></a>

您已满足先决条件。按照中的步骤[入门 CodeCommit ](getting-started-cc.md)开始使用 CodeCommit。

# 在 Windows 上通过 SSH 连接到 AWS CodeCommit 存储库的设置步骤
<a name="setting-up-ssh-windows"></a>

在首次连接之前，必须完成一些初始配置步骤。 AWS CodeCommit 设置计算机和 AWS 配置文件后，您可以连接到存储库并将该 CodeCommit存储库克隆到您的计算机（也称为创建本地存储库）。如果您刚刚接触 Git，我们建议您查看[哪里可以找到有关 Git 的更多信息？](welcome.md#welcome-get-started-with-git)中的信息。

**Topics**
+ [步骤 1：的初始配置 CodeCommit](#setting-up-ssh-windows-account)
+ [步骤 2：安装 Git](#setting-up-ssh-windows-install-git)
+ [第 3 步：为 Git 设置公钥和私钥以及 CodeCommit](#setting-up-ssh-windows-keys-windows)
+ [步骤 4：Connect 连接到 CodeCommit 控制台并克隆存储库](#setting-up-ssh-windows-connect-console)
+ [后续步骤](#setting-up-ssh-windows-next-step)

## 步骤 1：的初始配置 CodeCommit
<a name="setting-up-ssh-windows-account"></a>

按照以下步骤设置 Amazon Web Services 账户、创建 IAM 用户并配置访问权限 CodeCommit。

**创建和配置用于访问的 IAM 用户 CodeCommit**

1. 前往 [http://aws.amazon.com](https://aws.amazon.com/)，并选择**注册**，创建一个 Amazon Web Services 账户。

1. 创建 IAM 用户或使用您的 Amazon Web Services 账户中的现有用户。确保您具有与该 IAM 用户关联的访问密钥 ID 和秘密访问密钥。有关更多信息，请参阅[在 Amazon Web Services 账户中创建 IAM 用户](https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_SettingUpUser.html)。
**注意**  
CodeCommit 要求 AWS Key Management Service。如果您使用的是现有的 IAM 用户，请确保该用户没有明确拒绝所要求的 AWS KMS 操作的策略 CodeCommit。有关更多信息，请参阅 [AWS KMS 和加密](encryption.md)。

1. 登录 AWS 管理控制台 并打开 IAM 控制台，网址为[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。

1. **在 IAM 控制台的导航窗格中，选择 Users，然后选择要配置 CodeCommit 访问权限的 IAM 用户。**

1. 在 **Permissions** 选项卡上，选择 **Add Permissions**。

1. 在 **Grant permissions (授予权限)** 中，选择 **Attach existing policies directly (直接附加现有策略)**。

1. 从策略列表中，选择**AWSCodeCommitPowerUser**或其他托管策略进行 CodeCommit 访问。有关更多信息，请参阅 [AWS 的托管策略 CodeCommit](security-iam-awsmanpol.md)。

   选择要附加的策略后，选择**下一步：审核**以审核要附加到 IAM 用户的策略列表。如果列表正确，选择 **Add permissions**。

    有关 CodeCommit 托管策略以及与其他群组和用户共享仓库访问权限的更多信息，请参阅[共享存储库](how-to-share-repository.md)和[的身份验证和访问控制 AWS CodeCommit](auth-and-access-control.md)。

**注意**  
如果要在中使用 AWS CLI 命令 CodeCommit，请安装 AWS CLI。有关更多信息，请参阅 [命令行参考](cmd-ref.md)。

## 步骤 2：安装 Git
<a name="setting-up-ssh-windows-install-git"></a>

要处理 CodeCommit 存储库中的文件、提交和其他信息，必须在本地计算机上安装 Git。 CodeCommit 支持 Git 版本 1.7.9 及更高版本。Git 版本 2.28 支持为初始提交配置分支名称。我们建议使用最新版本的 Git。

要安装 Git，建议您访问 [Git 下载](http://git-scm.com/downloads)等网站。

**注意**  
Git 是一个不断发展的平台，会定期进行更新。有时，功能更改可能会影响其工作方式 CodeCommit。如果您在使用特定版本的 Git 时遇到问题 CodeCommit，请查看中的信息[故障排除](troubleshooting.md)。

如果您安装的 Git 版本不包含 Bash 仿真器（例如 Git Bash），请安装一个。配置 SSH 连接时，您将使用该仿真器而不是 Windows 命令行。

## 第 3 步：为 Git 设置公钥和私钥以及 CodeCommit
<a name="setting-up-ssh-windows-keys-windows"></a>

**在 Git 和 Windows CodeCommit 上设置公钥和私钥**

1. 打开 Bash 仿真器。
**注意**  
您可能需要使用管理权限运行仿真器。

   在仿真器中运行 **ssh-keygen** 命令，按照说明将文件保存到您的配置文件的 .ssh 目录。

   例如：

   ```
   $ ssh-keygen
   
   Generating public/private rsa key pair.
   Enter file in which to save the key (/drive/Users/user-name/.ssh/id_rsa): Type a file name here, for example /c/Users/user-name/.ssh/codecommit_rsa
   
   Enter passphrase (empty for no passphrase): <Type a passphrase, and then press Enter>
   Enter same passphrase again: <Type the passphrase again, and then press Enter>
   
   Your identification has been saved in drive/Users/user-name/.ssh/codecommit_rsa.
   Your public key has been saved in drive/Users/user-name/.ssh/codecommit_rsa.pub.
   The key fingerprint is:
   45:63:d5:99:0e:99:73:50:5e:d4:b3:2d:86:4a:2c:14 user-name@client-name
   The key's randomart image is:
   +--[ RSA 2048]----+
   |        E.+.o*.++|
   |        .o .=.=o.|
   |       . ..  *. +|
   |        ..o . +..|
   |        So . . . |
   |          .      |
   |                 |
   |                 |
   |                 |
   +-----------------+
   ```

   这会生成：
   + *codecommit\$1rsa*文件，即私钥文件。
   + *codecommit\$1rsa*.pub 文件，即公钥文件。
**提示**  
默认情况下，**ssh-keygen** 生成 2048 位密钥。您可以使用 -t 和 -b 参数来指定密钥的类型和长度。如果您想要 rsa 格式的 4096 位密钥，可以通过使用以下参数来运行命令：  

   ```
   ssh-keygen -t rsa -b 4096
   ```
有关 SSH 密钥所需的格式和长度的更多信息，请参阅将 [IAM 与配合使用 CodeCommit](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_ssh-keys.html#ssh-keys-code-commit)。

1. 运行以下命令以显示公钥文件 (*codecommit\$1rsa*.pub) 的值：

   ```
   cd .ssh
   notepad codecommit_rsa.pub
   ```

   复制文件内容，然后在不保存的情况下关闭记事本。该文件的内容类似于以下内容：

   ```
   ssh-rsa EXAMPLE-AfICCQD6m7oRw0uXOjANBgkqhkiG9w0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJB
   gNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb2
   5zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wHhc
   NMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAw
   DgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDAS=EXAMPLE user-name@computer-name
   ```

1. 登录 AWS 管理控制台 并打开 IAM 控制台，网址为[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。
**注意**  
您可以在 “**我的安全 CodeCommit 证书” 中直接查看和管理您的证书**。有关更多信息，请参阅 [查看和管理您的凭证](setting-up.md#setting-up-view-credentials)。

1. 在 IAM 控制台的导航窗格中，选择**用户**，然后从用户列表中选择您的 IAM 用户。

1. 在用户详细信息页面上，选择 **Security Credentials** 选项卡，然后选择 **Upload SSH public key**。

1. 将 SSH 公有密钥的内容粘贴到该字段中，然后选择 **Upload SSH public key**。

1. 复制或保存 **SSH 密钥 ID** 中的信息（例如，*APKAEIBAERJR2EXAMPLE*）。  
![\[IAM 控制台中的 SSH 密钥 ID\]](http://docs.aws.amazon.com/zh_cn/codecommit/latest/userguide/images/codecommit-ssh-key-id-iam.png)
**注意**  
如果您 IDs 上传了多个 SSH 密钥，则密钥将按密钥 ID 的字母顺序列出，而不是按上传日期排列。请确保已复制与正确上传日期关联的密钥 ID。

1. 在 Bash 仿真器中，运行以下命令在 \$1/.ssh 目录中创建一个配置文件，如果文件已存在，则编辑该文件：

   ```
   notepad ~/.ssh/config
   ```

1. 在文件中添加以下几行，其中的值*User*是您之前复制的 SSH 密钥 ID，的值*IdentityFile*是私钥文件的路径和名称：

   ```
   Host git-codecommit.*.amazonaws.com
     User APKAEIBAERJR2EXAMPLE
     IdentityFile ~/.ssh/codecommit_rsa
   ```
**注意**  
如果您为私钥文件指定了其他名称*codecommit\$1rsa*，请务必在此处使用该名称。  
您可以设置对多个 Amazon Web Services 账户中存储库的 SSH 访问权限。有关更多信息，请参阅[对 SSH 连接进行故障排除 AWS CodeCommit](troubleshooting-ssh.md)。

   将文件另存为 config（不是 config.txt），然后关闭记事本。
**重要**  
文件名必须为 `config`，不带文件扩展名。否则，SSH 连接将失败。

1. 运行下面的命令测试您的 SSH 配置：

   ```
   ssh git-codecommit.us-east-2.amazonaws.com
   ```

   系统会要求您确认连接，因为 `git-codecommit.us-east-2.amazonaws.com` 尚未包含在您的已知主机文件中。 CodeCommit 服务器指纹作为验证的一部分显示（支持 MD5 或`a9:6d:03:ed:08:42:21:be:06:e1:e0:2a:d1:75:31:5e`对`3lBlW2g5xn/NA2Ck6dyeJIrQOWvn7n8UEs56fG6ZIzQ`于 SHA256）。
**注意**  
CodeCommit 每个 AWS 区域服务器的指纹都是独一无二的。要查看的服务器指纹 AWS 区域，请参阅[的服务器指纹 CodeCommit](regions.md#regions-fingerprints)。

   确认连接后，您应会看到已将服务器添加到已知主机文件的确认消息和成功连接消息。如果您没有看到成功消息，请仔细检查您是否将`config`文件保存在配置为访问的 IAM 用户的 \$1/.ssh 目录中 CodeCommit，该`config`文件是否没有文件扩展名（例如，不能命名为 config.txt），以及是否指定了正确的私钥文件（*codecommit\$1rsa*而不是.pub）。*codecommit\$1rsa*

   要对问题进行排查，请运行 `ssh` 命令并指定 `-v` 参数。例如：

   ```
   ssh -v git-codecommit.us-east-2.amazonaws.com
   ```

   有关可帮助您解决连接问题的信息，请参阅 [对 SSH 连接进行故障排除 AWS CodeCommit](troubleshooting-ssh.md)。

## 步骤 4：Connect 连接到 CodeCommit 控制台并克隆存储库
<a name="setting-up-ssh-windows-connect-console"></a>

如果管理员已将 CodeCommit 存储库的名称和连接详细信息发送给您，您可以跳过该步骤并直接克隆存储库。

**连接到存储 CodeCommit 库**

1. 在 [https://console.aws.amazon.com/codesuite/codemmit](https://console.aws.amazon.com/codesuite/codecommit/home) /home 打开 CodeCommit 控制台。

1. 在区域选择器中，选择存储库的创建 AWS 区域 位置。存储库特定于 AWS 区域。有关更多信息，请参阅 [区域和 Git 连接端点](regions.md)。

1. 从列表中找到您要连接的存储库并选择此存储库。选择 **Clone URL (克隆 URL)**，然后选择克隆或连接到存储库时要使用的协议。此时将复制克隆 URL。
   + 如果您使用的是 IAM 用户的 Git 凭证或 AWS CLI附带的凭证助手，请复制 HTTPS URL。
   + 如果您在本地计算机上使用 **git-remote-codecommit** 命令，请复制 HTTPS (GRC) URL。
   + 如果您与 IAM 用户一起使用 SSH public/private 密钥对，请复制 SSH 网址。
**注意**  
 如果您看到的是**欢迎**页面而不是存储库列表，则说明您登录的 AWS 区域 位置中没有与您的 AWS 账户关联的存储库。要创建存储库，请参阅[创建 AWS CodeCommit 存储库](how-to-create-repository.md)或按照[Git 入门和 CodeCommit](getting-started.md)教程中的步骤进行操作。

1. 在 Bash 模拟器中，使用您复制的 SSH URL 运行 **git clone** 命令以克隆存储库。该命令会在运行命令的目录的子目录中创建本地存储库。例如，要将名为的存储库克隆*MyDemoRepo*到*my-demo-repo*位于美国东部（俄亥俄州）地区的本地存储库，请执行以下操作：

   ```
   git clone ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo my-demo-repo
   ```

   或者，打开命令提示符，使用您上传到 IAM 的公有密钥的 URL 和 SSH 密钥 ID 运行 **git clone** 命令。这将在运行命令的目录的子目录中创建本地存储库。例如，要将名为 *MyDemoRepo* 的存储库克隆成名为 *my-demo-repo* 的本地存储库，请运行以下命令：

   ```
   git clone ssh://Your-SSH-Key-ID@git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo my-demo-repo
   ```

   有关更多信息，请参阅[通过克隆 CodeCommit 存储库来连接存储库](how-to-connect.md#how-to-connect-http)和[创建提交](how-to-create-commit.md)。

## 后续步骤
<a name="setting-up-ssh-windows-next-step"></a>

您已满足先决条件。按照中的步骤[入门 CodeCommit ](getting-started-cc.md)开始使用 CodeCommit。

# 使用凭证助手设置与 Linux、macOS 或 Unix 上 AWS CodeCommit 存储库的 HTTPS 连接的 AWS CLI 步骤
<a name="setting-up-https-unixes"></a>

在首次连接之前，必须完成初始配置步骤。 AWS CodeCommit 对于大多数用户来说，可通过执行[适用于使用 Git 凭证的 HTTPS 用户](setting-up-gc.md)中的步骤来轻松完成这一过程。但是，如果您想 CodeCommit 使用根账户、联合访问或临时证书进行连接，则可以使用中包含的凭证帮助器。 AWS CLI

**注意**  
尽管证书助手是支持 CodeCommit 使用联合访问权限、身份提供商或临时证书进行连接的方法，但推荐的方法是安装和使用该**git-remote-codecommit**实用程序。有关更多信息，请参阅 [使用的 HTTPS 连接 AWS CodeCommit 的设置步骤 git-remote-codecommit](setting-up-git-remote-codecommit.md)。

**Topics**
+ [步骤 1：的初始配置 CodeCommit](#setting-up-https-unixes-account)
+ [步骤 2：安装 Git](#setting-up-https-unixes-install-git)
+ [步骤 3：设置凭证助手](#setting-up-https-unixes-credential-helper)
+ [步骤 4：连接到 CodeCommit 控制台并克隆存储库](#setting-up-https-unixes-connect-console)
+ [后续步骤](#setting-up-https-unixes-next-step)

## 步骤 1：的初始配置 CodeCommit
<a name="setting-up-https-unixes-account"></a>

按照以下步骤设置 Amazon Web Services 账户、创建和配置 IAM 用户并安装 AWS CLI。

**创建和配置用于访问的 IAM 用户 CodeCommit**

1. 前往 [http://aws.amazon.com](https://aws.amazon.com/)，并选择**注册**，创建一个 Amazon Web Services 账户。

1. 创建 IAM 用户或使用您的 Amazon Web Services 账户中的现有用户。确保您具有与该 IAM 用户关联的访问密钥 ID 和秘密访问密钥。有关更多信息，请参阅[在 Amazon Web Services 账户中创建 IAM 用户](https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_SettingUpUser.html)。
**注意**  
CodeCommit 要求 AWS Key Management Service。如果您使用的是现有的 IAM 用户，请确保该用户没有明确拒绝所要求的 AWS KMS 操作的策略 CodeCommit。有关更多信息，请参阅 [AWS KMS 和加密](encryption.md)。

1. 登录 AWS 管理控制台 并打开 IAM 控制台，网址为[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。

1. 在 IAM 控制台的导航窗格中，选择**用户**，然后选择要配置 CodeCommit 访问权限的 IAM 用户。

1. 在 **Permissions** 选项卡上，选择 **Add Permissions**。

1. 在 **Grant permissions (授予权限)** 中，选择 **Attach existing policies directly (直接附加现有策略)**。

1. 从策略列表中，选择**AWSCodeCommitPowerUser**或其他托管策略进行 CodeCommit 访问。有关更多信息，请参阅 [AWS 的托管策略 CodeCommit](security-iam-awsmanpol.md)。

   选择要附加的策略后，选择**下一步：审核**以审核要附加到 IAM 用户的策略列表。如果列表正确，选择 **Add permissions**。

    有关 CodeCommit 托管策略以及与其他群组和用户共享仓库访问权限的更多信息，请参阅[共享存储库](how-to-share-repository.md)和[的身份验证和访问控制 AWS CodeCommit](auth-and-access-control.md)。

**要安装和配置 AWS CLI**

1. 在您的本地计算机上，下载并安装 AWS CLI。这是通过命令行与交互 CodeCommit 的先决条件。我们建议您安装 AWS CLI 版本 2。它是的最新主要版本 AWS CLI ，支持所有最新功能。它是唯一支持使用根账户、联合访问权限或临时证书的版本**git-remote-codecommit**。 AWS CLI 

   有关更多信息，请参阅[使用 AWS 命令行界面进行设置](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-set-up.html)。
**注意**  
CodeCommit 仅适用于 1.7.38 及更高 AWS CLI 版本。作为最佳实践，请安装或升级 AWS CLI 到可用的最新版本。要确定 AWS CLI 您安装了哪个版本，请运行**aws --version**命令。  
要将旧版本的升级 AWS CLI 到最新版本，请参阅[安装 AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/installing.html)。

1. 运行此命令以验证的 CodeCommit 命令 AWS CLI 是否已安装。

   ```
   aws codecommit help
   ```

   此命令返回 CodeCommit 命令列表。

1.  AWS CLI 使用**configure**命令配置配置文件，如下所示：。

   ```
   aws configure
   ```

   出现提示时，指定要与之 AWS 配合使用的 IAM 用户的访问 AWS 密钥和私有访问密钥 CodeCommit。另外，请务必指定存储库的 AWS 区域 存在位置，例如`us-east-2`。系统提示指定默认输出格式时，指定 `json`。例如，如果您正在为 IAM 用户配置相关配置文件：

   ```
   AWS Access Key ID [None]: Type your IAM user AWS access key ID here, and then press Enter
   AWS Secret Access Key [None]: Type your IAM user AWS secret access key here, and then press Enter
   Default region name [None]: Type a supported region for CodeCommit here, and then press Enter
   Default output format [None]: Type json here, and then press Enter
   ```

   有关创建和配置用于的配置文件的更多信息 AWS CLI，请参阅以下内容：
   + [命名配置文件](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html)
   + [在中使用 IAM 角色 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-role.html)
   + [设置命令](https://docs.aws.amazon.com/cli/latest/reference/set.html)
   + [使用轮换凭证连接到 AWS CodeCommit 存储库](temporary-access.md)

   要连接到存储库或其他存储库中的资源 AWS 区域，必须 AWS CLI 使用默认的区域名称重新配置。支持的默认区域名称 CodeCommit 包括：
   + us-east-2
   + us-east-1
   + eu-west-1
   + us-west-2
   + ap-northeast-1
   + ap-southeast-1
   + ap-southeast-2
   + ap-southeast-3
   + me-central-1
   + eu-central-1
   + ap-northeast-2
   + sa-east-1
   + us-west-1
   + eu-west-2
   + ap-south-1
   + ap-south-1
   + ca-central-1
   + us-gov-west-1
   + us-gov-east-1
   + eu-north-1
   + ap-east-1
   + me-south-1
   + cn-north-1
   + cn-northwest-1
   + eu-south-1
   + ap-northeast-3
   + af-south-1
   + il-central-1

   有关 CodeCommit 和的更多信息 AWS 区域，请参阅[区域和 Git 连接端点](regions.md)。有关 IAM、访问密钥和秘密密钥的更多信息，请参阅‭[如何获取凭证？](https://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_Introduction.html#IAM_SecurityCredentials)和[管理 IAM 用户的访问密钥](https://docs.aws.amazon.com/IAM/latest/UserGuide/ManagingCredentials.html)。有关 AWS CLI 和配置文件的更多信息，请参阅[命名配置文件](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html)。

## 步骤 2：安装 Git
<a name="setting-up-https-unixes-install-git"></a>

要处理 CodeCommit 存储库中的文件、提交和其他信息，必须在本地计算机上安装 Git。 CodeCommit 支持 Git 版本 1.7.9 及更高版本。Git 版本 2.28 支持为初始提交配置分支名称。我们建议使用最新版本的 Git。

要安装 Git，建议您访问 [Git 下载](http://git-scm.com/downloads)等网站。

**注意**  
Git 是一个不断发展的平台，会定期进行更新。有时，功能更改可能会影响其工作方式 CodeCommit。如果您在使用特定版本的 Git 时遇到问题 CodeCommit，请查看中的信息[故障排除](troubleshooting.md)。

## 步骤 3：设置凭证助手
<a name="setting-up-https-unixes-credential-helper"></a><a name="setting-up-https-unixes-ch-config"></a>

1. 在终端中，使用 Git 运行**git config**，在凭据配置文件中指定 Git 凭据助手的用法，并启用 Git 凭证助手将路径发送到存储库： AWS 

   ```
   git config --global credential.helper '!aws codecommit credential-helper $@'
   git config --global credential.UseHttpPath true
   ```
**提示**  
凭证助手使用默认 AWS 凭证配置文件或 Amazon EC2 实例角色。如果您创建了用于 CodeCommit 的 AWS 凭证配置文件，则可以指定要使用的配置文件，如 `CodeCommitProfile`：  

   ```
   git config --global credential.helper '!aws --profile CodeCommitProfile codecommit credential-helper $@'    
   ```
如果您的配置文件名称包含空格，请确保用引号 (") 将名称引起来。  
您可以使用 `--local` 而不是 `--global` 配置每个存储库的配置文件，而不是进行全局配置。

   Git 凭证辅助程序将以下值写入 `~/.gitconfig`：

   ```
   [credential]    
       helper = !aws --profile CodeCommitProfile codecommit credential-helper $@
       UseHttpPath = true
   ```
**重要**  
如果您想在同一台本地计算机上使用不同的 IAM 用户 CodeCommit，则必须再次运行该**git config**命令并指定不同的 AWS 凭证配置文件。

1. 运行 **git config --global --edit** 验证前面的值是否已写入 `~/.gitconfig`。如果成功，您应能看到前面的值（除了 Git 全局配置文件中可能已有的值）。要退出，通常需要键入 **:q**，然后按 Enter。

   如果在配置凭证辅助程序后遇到问题，请参阅[故障排除](troubleshooting.md)。
**重要**  
如果您使用的是 macOS，请通过以下步骤确保凭证助手配置正确。

1. 如果您使用的是 macOS，请使用 HTTPS [连接存储库。 CodeCommit ](how-to-connect.md)首次使用 HTTPS 连接到 CodeCommit 存储库后，后续访问将在大约 15 分钟后失败。macOS 上的默认 Git 版本使用 Keychain Access 实用程序存储凭证。出于安全考虑，为访问 CodeCommit 存储库而生成的密码是临时的，因此存储在钥匙串中的证书将在大约 15 分钟后停止工作。为防止使用这些过期凭证，您必须执行以下操作之一：
   + 安装默认不使用密钥链的 Git 版本。
   + 将 Keychain Access 实用程序配置为不为 CodeCommit 存储库提供凭据。

   1. 打开 Keychain Access 实用程序。(您可以使用 Finder 查找它。)

   1. 搜索 `git-codecommit.us-east-2.amazonaws.com`。突出显示该行，打开上下文菜单或右键单击它，然后选择 **Get Info**。

   1. 选择 **Access Control** 选项卡。

   1. 在 **Confirm before allowing access (运行访问前进行确认)** 中，选择 `git-credential-osxkeychain`，然后选择减号将它从列表中删除。
**注意**  
在从列表中删除 `git-credential-osxkeychain` 后，当您运行 Git 命令时，会看到一条弹出消息。选择**拒绝**以继续。如果您不希望显示弹出窗口，可考虑以下其他选项：  
 CodeCommit 使用 SSH 而不是 HTTPS 进行连接。有关更多信息，请参阅 [适用于 Linux、macOS 或 Unix 上的 SSH 连接](setting-up-ssh-unixes.md)。
在 Keychain Access 实用程序中，在针对 `git-codecommit.us-east-2.amazonaws.com` 的**访问控制**选项卡上，选择**允许所有应用程序访问此项目（访问此项目不受限制）**选项。这将阻止弹出窗口，但凭证最终会到期（平均而言，大约需要 15 分钟），然后会显示 403 错误消息。如果发生这种情况，您必须删除密钥链项才能恢复功能。
有关更多信息，请参阅 [macOS 版 Git：我成功配置了凭证助手，但在访问我的存储库时被系统拒绝 (403)](troubleshooting-ch.md#troubleshooting-macoshttps)。

## 步骤 4：连接到 CodeCommit 控制台并克隆存储库
<a name="setting-up-https-unixes-connect-console"></a>

如果管理员已经向您发送了 CodeCommit 存储库的名称和连接详细信息，则可以跳过此步骤直接克隆存储库。

**连接到存储 CodeCommit 库**

1. 在 [https://console.aws.amazon.com/codesuite/codemmit](https://console.aws.amazon.com/codesuite/codecommit/home) /home 打开 CodeCommit 控制台。

1. 在区域选择器中，选择存储库的创建 AWS 区域 位置。存储库特定于 AWS 区域。有关更多信息，请参阅 [区域和 Git 连接端点](regions.md)。

1. 从列表中找到您要连接的存储库并选择此存储库。选择 **Clone URL (克隆 URL)**，然后选择克隆或连接到存储库时要使用的协议。此时将复制克隆 URL。
   + 如果您使用的是 IAM 用户的 Git 凭证或 AWS CLI附带的凭证助手，请复制 HTTPS URL。
   + 如果您在本地计算机上使用 **git-remote-codecommit** 命令，请复制 HTTPS (GRC) URL。
   + 如果您与 IAM 用户一起使用 SSH public/private 密钥对，请复制 SSH 网址。
**注意**  
 如果您看到的是**欢迎**页面而不是存储库列表，则说明您登录的 AWS 区域 位置中没有与您的 AWS 账户关联的存储库。要创建存储库，请参阅[创建 AWS CodeCommit 存储库](how-to-create-repository.md)或按照[Git 入门和 CodeCommit](getting-started.md)教程中的步骤进行操作。

1. 打开终端并使用复制的 HTTPS URL 运行 **git clone** 命令。例如，要将名为的存储库克隆*MyDemoRepo*到*my-demo-repo*位于美国东部（俄亥俄州）地区的本地存储库，请执行以下操作：

   ```
   git clone https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo my-demo-repo
   ```

## 后续步骤
<a name="setting-up-https-unixes-next-step"></a>

您已满足先决条件。按照中的步骤[入门 CodeCommit ](getting-started-cc.md)开始使用 CodeCommit。

# 使用 AWS CLI 凭据助手在 Windows 上与 Windows 上的 AWS CodeCommit 存储库进行 HTTPS 连接的设置步骤
<a name="setting-up-https-windows"></a>

在首次连接之前，必须完成初始配置步骤。 AWS CodeCommit 对于大多数用户来说，可通过执行[适用于使用 Git 凭证的 HTTPS 用户](setting-up-gc.md)中的步骤来轻松完成这一过程。但是，如果您想 CodeCommit 使用根账户、联合访问或临时证书进行连接，则可以使用中包含的凭证帮助器。 AWS CLI

**注意**  
尽管证书助手是支持 CodeCommit 使用联合访问权限、身份提供商或临时证书进行连接的方法，但推荐的方法是安装和使用该**git-remote-codecommit**实用程序。有关更多信息，请参阅 [使用的 HTTPS 连接 AWS CodeCommit 的设置步骤 git-remote-codecommit](setting-up-git-remote-codecommit.md)。

本主题将引导您完成安装 AWS CLI、设置计算机和 AWS 配置文件、连接到存储库以及将该 CodeCommit 存储库克隆到您的计算机的步骤，也称为创建本地存储库。如果您刚刚接触 Git，我们建议您查看[哪里可以找到有关 Git 的更多信息？](welcome.md#welcome-get-started-with-git)中的信息。

**Topics**
+ [步骤 1：的初始配置 CodeCommit](#setting-up-https-windows-account)
+ [步骤 2：安装 Git](#setting-up-https-windows-install-git)
+ [步骤 3：设置凭证助手](#setting-up-https-windows-credential-helper)
+ [步骤 4：Connect 连接到 CodeCommit 控制台并克隆存储库](#setting-up-https-windows-connect-console)
+ [后续步骤](#setting-up-https-windows-next-step)

## 步骤 1：的初始配置 CodeCommit
<a name="setting-up-https-windows-account"></a>

按照以下步骤设置 Amazon Web Services 账户、创建和配置 IAM 用户并安装 AWS CLI。 AWS CLI 包括一个凭证助手，您可以将其配置为与 CodeCommit 存储库的 HTTPS 连接。

**创建和配置用于访问的 IAM 用户 CodeCommit**

1. 前往 [http://aws.amazon.com](https://aws.amazon.com/)，并选择**注册**，创建一个 Amazon Web Services 账户。

1. 创建 IAM 用户或使用您的 Amazon Web Services 账户中的现有用户。确保您具有与该 IAM 用户关联的访问密钥 ID 和秘密访问密钥。有关更多信息，请参阅[在 Amazon Web Services 账户中创建 IAM 用户](https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_SettingUpUser.html)。
**注意**  
CodeCommit 要求 AWS Key Management Service。如果您使用的是现有的 IAM 用户，请确保该用户没有明确拒绝所要求的 AWS KMS 操作的策略 CodeCommit。有关更多信息，请参阅 [AWS KMS 和加密](encryption.md)。

1. 登录 AWS 管理控制台 并打开 IAM 控制台，网址为[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。

1. **在 IAM 控制台的导航窗格中，选择 Users，然后选择要配置 CodeCommit 访问权限的 IAM 用户。**

1. 在 **Permissions** 选项卡上，选择 **Add Permissions**。

1. 在 **Grant permissions (授予权限)** 中，选择 **Attach existing policies directly (直接附加现有策略)**。

1. 从策略列表中，选择**AWSCodeCommitPowerUser**或其他托管策略进行 CodeCommit 访问。有关更多信息，请参阅 [AWS 的托管策略 CodeCommit](security-iam-awsmanpol.md)。

   选择要附加的策略后，选择**下一步：审核**以审核要附加到 IAM 用户的策略列表。如果列表正确，选择 **Add permissions**。

    有关 CodeCommit 托管策略以及与其他群组和用户共享仓库访问权限的更多信息，请参阅[共享存储库](how-to-share-repository.md)和[的身份验证和访问控制 AWS CodeCommit](auth-and-access-control.md)。

**要安装和配置 AWS CLI**

1. 在您的本地计算机上，下载并安装 AWS CLI。这是通过命令行与交互 CodeCommit 的先决条件。我们建议您安装 AWS CLI 版本 2。它是的最新主要版本 AWS CLI ，支持所有最新功能。它是唯一支持使用根账户、联合访问权限或临时证书的版本**git-remote-codecommit**。 AWS CLI 

   有关更多信息，请参阅[使用 AWS 命令行界面进行设置](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-set-up.html)。
**注意**  
CodeCommit 仅适用于 1.7.38 及更高 AWS CLI 版本。作为最佳实践，请安装或升级 AWS CLI 到可用的最新版本。要确定 AWS CLI 您安装了哪个版本，请运行**aws --version**命令。  
要将旧版本的升级 AWS CLI 到最新版本，请参阅[安装 AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/installing.html)。

1. 运行此命令以验证的 CodeCommit 命令 AWS CLI 是否已安装。

   ```
   aws codecommit help
   ```

   此命令返回 CodeCommit 命令列表。

1.  AWS CLI 使用**configure**命令配置配置文件，如下所示：。

   ```
   aws configure
   ```

   出现提示时，指定要与之 AWS 配合使用的 IAM 用户的访问 AWS 密钥和私有访问密钥 CodeCommit。另外，请务必指定存储库的 AWS 区域 存在位置，例如`us-east-2`。系统提示指定默认输出格式时，指定 `json`。例如，如果您正在为 IAM 用户配置相关配置文件：

   ```
   AWS Access Key ID [None]: Type your IAM user AWS access key ID here, and then press Enter
   AWS Secret Access Key [None]: Type your IAM user AWS secret access key here, and then press Enter
   Default region name [None]: Type a supported region for CodeCommit here, and then press Enter
   Default output format [None]: Type json here, and then press Enter
   ```

   有关创建和配置用于的配置文件的更多信息 AWS CLI，请参阅以下内容：
   + [命名配置文件](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html)
   + [在中使用 IAM 角色 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-role.html)
   + [设置命令](https://docs.aws.amazon.com/cli/latest/reference/set.html)
   + [使用轮换凭证连接到 AWS CodeCommit 存储库](temporary-access.md)

   要连接到存储库或其他存储库中的资源 AWS 区域，必须 AWS CLI 使用默认的区域名称重新配置。支持的默认区域名称 CodeCommit 包括：
   + us-east-2
   + us-east-1
   + eu-west-1
   + us-west-2
   + ap-northeast-1
   + ap-southeast-1
   + ap-southeast-2
   + ap-southeast-3
   + me-central-1
   + eu-central-1
   + ap-northeast-2
   + sa-east-1
   + us-west-1
   + eu-west-2
   + ap-south-1
   + ap-south-1
   + ca-central-1
   + us-gov-west-1
   + us-gov-east-1
   + eu-north-1
   + ap-east-1
   + me-south-1
   + cn-north-1
   + cn-northwest-1
   + eu-south-1
   + ap-northeast-3
   + af-south-1
   + il-central-1

   有关 CodeCommit 和的更多信息 AWS 区域，请参阅[区域和 Git 连接端点](regions.md)。有关 IAM、访问密钥和秘密密钥的更多信息，请参阅‭[如何获取凭证？](https://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_Introduction.html#IAM_SecurityCredentials)和[管理 IAM 用户的访问密钥](https://docs.aws.amazon.com/IAM/latest/UserGuide/ManagingCredentials.html)。有关 AWS CLI 和配置文件的更多信息，请参阅[命名配置文件](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html)。

## 步骤 2：安装 Git
<a name="setting-up-https-windows-install-git"></a>

要处理 CodeCommit 存储库中的文件、提交和其他信息，必须在本地计算机上安装 Git。 CodeCommit 支持 Git 版本 1.7.9 及更高版本。Git 版本 2.28 支持为初始提交配置分支名称。我们建议使用最新版本的 Git。

要安装 Git，建议访问 [Git for Windows](https://gitforwindows.org/) 等网站。如果您使用此链接安装 Git，则可以接受除以下设置之外的所有安装默认设置：
+ 在**调整 PATH 环境**步骤中出现提示时，从命令行中选择使用 Git 的选项。
+ （可选）如果您打算将 HTTPS 与中包含的凭据帮助程序一起使用， AWS CLI 而不是为其配置 Git 凭据 CodeCommit，请在 “**配置额外选项**” 页面上，确保清除 “**启用 Git 凭据管理器**” 选项。仅当 IAM 用户配置 Git 凭证时，Git 凭证管理器 CodeCommit 才与兼容。有关更多信息，请参阅[适用于使用 Git 凭证的 HTTPS 用户](setting-up-gc.md)和[Windows 版 Git：我安装了 Windows 版 Git，但在访问我的存储库时被系统拒绝 (403)](troubleshooting-ch.md#troubleshooting-windowshttps)。

**注意**  
Git 是一个不断发展的平台，会定期进行更新。有时，功能更改可能会影响其工作方式 CodeCommit。如果您在使用特定版本的 Git 时遇到问题 CodeCommit，请查看中的信息[故障排除](troubleshooting.md)。

## 步骤 3：设置凭证助手
<a name="setting-up-https-windows-credential-helper"></a>

 AWS CLI 包括一个可以与 CodeCommit之配合使用的 Git 凭证助手。Git 凭证助手需要 AWS 证书配置文件，该配置文件存储 IAM 用户的 AWS 访问密钥 ID 和 AWS 私有访问密钥的副本（以及默认 AWS 区域 名称和默认输出格式）。Git 凭证助手使用此信息自动进行身份验证， CodeCommit 因此您无需在每次使用 Git 进行 CodeCommit交互时都输入这些信息。<a name="setting-up-https-windows-ch-config"></a>

1. 打开命令提示符并使用 Git 运行**git config**，指定使用带有凭据配置文件的 Git 凭证助手，这样 Git 凭据助手就可以发送存储库的路径： AWS 

   ```
   git config --global credential.helper "!aws codecommit credential-helper $@"
   git config --global credential.UseHttpPath true
   ```

   Git 凭证辅助程序向 .gitconfig 文件写入以下内容：

   ```
   [credential]    
       helper = !aws codecommit credential-helper $@ 
       UseHttpPath = true
   ```
**重要**  
如果您使用的是 Bash 仿真器而不是 Windows 命令行，则必须使用单引号而不是双引号。
凭证助手使用默认 AWS 配置文件或 Amazon EC2 实例角色。如果您创建了要使用的 AWS 凭据配置文件（例如）*CodeCommitProfile*，则可以按如下方式修改命令以改为使用它：  
   

     ```
     git config --global credential.helper "!aws codecommit credential-helper --profile CodeCommitProfile $@"
     ```
这将向 .gitconfig 文件中写入以下内容：  
   

     ```
     [credential]    
         helper = !aws codecommit credential-helper --profile=CodeCommitProfile $@ 
         UseHttpPath = true
     ```
如果您的配置文件名称包含空格，则在运行此命令后，必须编辑 .gitconfig 文件以使用单引号 (') 将此命令引起来。否则，凭证辅助程序将不起作用。
如果您的 Windows 版 Git 安装包含 Git Credential Manager 实用程序，则在前几次连接尝试后，您会看到 403 错误或向 Credential Manager 实用程序提供凭证的提示。解决该问题的最可靠的方法是卸载并重新安装 Windows 版 Git，安装时不要选中 Git Credential Manager 实用程序选项，因为它与 CodeCommit 不兼容。如果要保留 Git Credential Manager 实用程序，则必须执行其他配置步骤才能同时使用 CodeCommit，包括手动修改.gitconfig 文件以指定在连接时使用凭证助手。 AWS CodeCommit CodeCommit从 Credential Manager 实用程序（可在“控制面板”中找到该实用程序）中删除任何已存储的凭证。删除所有已存储的凭证后，向 .gitconfig 文件中添加以下内容并将其保存，然后在新的命令提示符窗口中重试连接：  

     ```
     [credential "https://git-codecommit.us-east-2.amazonaws.com"]
         helper = !aws codecommit credential-helper $@ 
         UseHttpPath = true
     
     [credential "https://git-codecommit.us-east-1.amazonaws.com"]
         helper = !aws codecommit credential-helper $@ 
         UseHttpPath = true
     ```
您可能还必须先通过指定 **--system** 而非 **--global** 或 **--local** 来重新配置 **git config** 设置，之后所有连接才能正常工作。
如果您想在同一台本地计算机上使用不同的 IAM 用户 CodeCommit，则应指定** git config --local**而不是**git config --global**，然后为每个 AWS 凭证配置文件运行配置。

1. 运行 **git config --global --edit** 验证上面的值是否已写入用户配置文件的 .gitconfig 文件（默认为 `%HOME%\.gitconfig` 或 `drive:\Users\UserName\.gitconfig`）。如果成功，您应该能够看到前面的值（以及 Git 全局配置文件中已有的值）。要退出，通常需要键入 **:q**，然后按 Enter。

## 步骤 4：Connect 连接到 CodeCommit 控制台并克隆存储库
<a name="setting-up-https-windows-connect-console"></a>

如果管理员已经向您发送了 CodeCommit 存储库的名称和连接详细信息，则可以跳过此步骤直接克隆存储库。

**连接到存储 CodeCommit 库**

1. 在 [https://console.aws.amazon.com/codesuite/codemmit](https://console.aws.amazon.com/codesuite/codecommit/home) /home 打开 CodeCommit 控制台。

1. 在区域选择器中，选择存储库的创建 AWS 区域 位置。存储库特定于 AWS 区域。有关更多信息，请参阅 [区域和 Git 连接端点](regions.md)。

1. 从列表中找到您要连接的存储库并选择此存储库。选择 **Clone URL (克隆 URL)**，然后选择克隆或连接到存储库时要使用的协议。此时将复制克隆 URL。
   + 如果您使用的是 IAM 用户的 Git 凭证或 AWS CLI附带的凭证助手，请复制 HTTPS URL。
   + 如果您在本地计算机上使用 **git-remote-codecommit** 命令，请复制 HTTPS (GRC) URL。
   + 如果您与 IAM 用户一起使用 SSH public/private 密钥对，请复制 SSH 网址。
**注意**  
 如果您看到的是**欢迎**页面而不是存储库列表，则说明您登录的 AWS 区域 位置中没有与您的 AWS 账户关联的存储库。要创建存储库，请参阅[创建 AWS CodeCommit 存储库](how-to-create-repository.md)或按照[Git 入门和 CodeCommit](getting-started.md)教程中的步骤进行操作。

1. 打开命令提示符，使用您复制的 HTTPS URL 运行 **git clone** 命令。这将在运行命令的目录的子目录中创建本地存储库。例如，要将名为的存储库克隆*MyDemoRepo*到*my-demo-repo*位于美国东部（俄亥俄州）地区的本地存储库，请执行以下操作：

   ```
   git clone https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo my-demo-repo
   ```

   在某些版本的 Windows 上，您可能会看到一条弹出消息，要求您输入用户名和密码。这是 Windows 的内置凭证管理系统，但它与 AWS CodeCommit的凭证辅助程序不兼容。选择**取消**。

   

## 后续步骤
<a name="setting-up-https-windows-next-step"></a>

您已满足先决条件。按照中的步骤[入门 CodeCommit ](getting-started-cc.md)开始使用 CodeCommit。