

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

# 使用 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。