HTTPS 连接的设置步骤AWS CodeCommit使用 git-remote-codecommit - AWS CodeCommit

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

HTTPS 连接的设置步骤AWS CodeCommit使用 git-remote-codecommit

如果要使用根账户、联合访问或临时凭证连接到 CodeCommit,则应使用设置访问权限。git-remote-codecommit. 此实用程序提供一种通过扩展 Git 从 CodeCommit 存储库中推送和提取代码的简单方法。这是支持使用联合访问、身份提供程序和临时凭证建立连接的推荐方法。您可以不创建 IAM 用户,而是使用来自的现有身份。AWS Directory Service、您的企业用户目录或 Web 身份提供商。这些用户被称为联合身份用户。在通过身份提供商请求访问权限时,AWS 将为联合身份用户分配角色。有关联合身份用户的更多信息,请参阅 IAM 用户指南 中的联合身份用户和角色

您还可以使用git-remote-codecommit与 IAM 用户一起使用。与其他 HTTPS 连接方法不同,git-remote-codecommit 不要求为用户设置 Git 凭证。

注意

某些 IDE 不支持 git-remote-codecommit 使用的克隆 URL 格式。您可能需要手动将存储库克隆到本地计算机,然后才能在您首选的 IDE 中使用它们。有关更多信息,请参阅git-remote-codecommit 和 AWS CodeCommit 疑难解答

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

步骤 0:安装 git-remote-codecommit 的先决条件

您必须在本地计算机上安装一些先决条件,然后才能使用 git-remote-codecommit。包括:

  • Python(版本 3 或更高版本)及其程序包管理器 pip(如果尚未安装)。要下载并安装 Python 的最新版本,请访问 Python 网站

  • 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 下载.

注意

Git 是一个不断发展的平台,会定期进行更新。有时,功能上的更改可能会影响到它与 CodeCommit 协作的方式。如果遇到 Git 和 CodeCommit 特定版本的问题,请参阅中的信息。问题排查.

第 1 步:CodeCommit 的初始配置

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

创建和配置 IAM 用户以访问 CodeCommit

  1. 通过转到创建 Amazon Web Services 账户http://aws.amazon.com然后选择注册.

  2. 创建 IAM 用户或使用您的 Amazon Web Services 账户中现有的 IAM 用户。确保您具有与该 IAM 用户关联的访问密钥 ID 和秘密访问密钥。有关更多信息,请参阅 。在您的 Amazon Web Services 账户中创建 IAM 用户.

    注意

    CodeCommit 要求AWS Key Management Service. 如果使用现有的 IAM 用户,请确保未向该用户附加明确拒绝的任何策略。AWS KMSCodeCommit 所需的操作。有关更多信息,请参阅AWS KMS和加密

  3. 登录 AWS Management Console,打开 IAM 控制台 https://console.aws.amazon.com/iam/

  4. 在 IAM 控制台的导航窗格中,选择用户,然后选择要配置进行 CodeCommit 访问权限的 IAM 用户。

  5. Permissions 选项卡上,选择 Add Permissions

  6. Grant permissions (授予权限) 中,选择 Attach existing policies directly (直接附加现有策略)

  7. 从策略列表中,选择awscodeCommit PowerUser或另一个用于 CodeCommit 访问的托管策略。有关更多信息,请参阅AWSCodeCommit 的托管策略

    选择要附加的策略后,选择后续:审核以审核要附加到 IAM 用户的策略列表。如果列表正确,选择 Add permissions

    有关 CodeCommit 管理的策略以及与其他组和用户共享访问存储库的更多信息,请参阅。共享存储库AWS CodeCommit 的身份验证和访问控制.

安装和配置 AWS CLI

  1. 在本地计算机上,下载并安装 AWS CLI。这是从命令行与 CodeCommit 进行交互的前提条件。建议您安装AWS CLI版本 2。是的最新主版本。AWS CLI支持所有最新功能。是的唯一版本。AWS CLI支持使用根账户、联合访问或临时凭证与git-remote-codecommit.

    有关更多信息,请参阅使用 AWS 命令行界面进行设置

    注意

    CodeCommit 只适用于AWS CLI版本 1.7.38 及更高版本。作为最佳做法,请安装 AWS CLI 或将其升级到可用的最新版本。要确定您安装的 AWS CLI 的版本,请运行 aws --version 命令。

    要将旧版本的 AWS CLI 升级到最新版本,请参阅安装 AWS Command Line Interface

  2. 运行此命令以验证用于AWS CLI已安装。

    aws codecommit help

    此命令返回 CodeCommit 命令的列表。

  3. 配置AWS CLI使用配置文件configure命令,如下所示:。

    aws configure

    系统提示时,请指定AWS访问密钥和AWS用于 CodeCommit 的 IAM 用户的私有访问密钥。此外,请务必指定 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 配合使用的详细信息,请参阅以下内容:

    连接存储库或另一个存储库中的资源 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

    • eu-central-1

    • ap-northeast-2

    • sa-east-1

    • us-west-1

    • eu-west-2

    • 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

    有关 CodeCommit 和的更多信息 AWS 区域 ,请参阅区域和 Git 连接终端节点. 有关 IAM、访问密钥和私有密钥的更多信息,请参阅如何获得证书?管理 IAM 用户的访问密钥. 有关 AWS CLI 和配置文件的更多信息,请参阅命名配置文件

第 2 步:安装 git-remote-codecommit

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

安装 git-remote-codecommit

  1. 在终端或命令行中,运行以下命令:

    pip install git-remote-codecommit
    注意

    根据您的操作系统和配置,您可能需要使用提升的权限运行此命令,例如 sudo:

    sudo pip install git-remote-codecommit
  2. 监控安装过程,直到您看到类似于以下内容的成功消息:

    Successfully built git-remote-codecommit

第 3 步:Connect 到 CodeCommit 控制台并克隆存储库

如果管理员已经向您发送了用于的克隆 URLgit-remote-codecommit对于 CodeCommit 存储库,您可以跳过连接到控制台的操作,而直接克隆存储库。

连接到 CodeCommit 存储库

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

  2. 在区域选择器中,选择 AWS 区域 存储库的创建位置。存储库特定于 AWS 区域 . 有关更多信息,请参阅区域和 Git 连接终端节点

  3. 从列表中找到您要连接的存储库并选择此存储库。选择 Clone URL (克隆 URL),然后选择克隆或连接到存储库时要使用的协议。此时将复制克隆 URL。

    • 如果您对 IAM 用户使用 Git 凭证或使用随附的凭证辅助程序,请复制 HTTPS URL。AWS CLI.

    • 如果您在本地计算机上使用 git-remote-codecommit 命令,请复制 HTTPS (GRC) URL。

    • 如果您对 IAM 用户使用 SSH 公有密钥/私有 key pair,请复制 SSH URL。

    注意

    如果你看到欢迎使用页面而不是存储库列表,说明没有存储库与您的关联。AWS中的账户 AWS 区域 登录的位置。要创建存储库,请参阅创建AWS CodeCommitrepository或按照Git 和 CodeCommit 入门教程中的步骤进行操作。

  4. 在终端或命令提示符处,使用 git clone 命令克隆存储库。请使用您复制的 HTTPS git-remote-codecommit URL 以及 AWS CLI 配置文件的名称(如果您创建了命名配置文件)。如果未指定配置文件,则该命令将采用默认配置文件。这将在运行命令的目录的子目录中创建本地存储库。例如,要克隆名为的存储库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

后续步骤

您已满足先决条件。按中的步骤操作。CodeCommit 入门 开始使用 CodeCommit。

要了解如何创建和推送您的第一次提交,请参阅在 中创建提交AWS CodeCommit. 如果您刚接触 Git,则可能还要查看中的信息。我在哪里可以了解更多关于 Git 的信息Git 和入门AWS CodeCommit.