本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
HTTPS 连接的设置步骤Amazon CodeCommitWindows 上的存储库有Amazon CLI凭证助手
在首次连接到 Amazon CodeCommit 之前,您必须先完成初始配置步骤。对于大多数用户来说,可通过执行适用于使用 Git 凭证的 HTTPS 用户中的步骤来轻松完成这一过程。但是,如果要使用根账户、联合访问或临时凭证连接 CodeCommit,您可以使用 Amazon CLI 中包含的凭证辅助程序。
注意
尽管凭证辅助程序是支持使用联合访问、身份提供程序或临时凭证连接到 CodeCommit 的方法,但推荐的方法是安装和使用 git-remote-codecommit 实用程序。有关更多信息,请参阅HTTPS 连接的设置步骤Amazon CodeCommit和git-remote-codecommit:
本主题将引导您完成安装步骤Amazon CLI,设置您的计算机然后Amazon个人资料,连接到CodeCommit存储库,然后将该存储库克隆到您的计算机上,也称为创建本地存储库。如果您刚刚接触 Git,我们建议您查看我在哪里可以了解有关 Git 的更多信息?中的信息。
步骤 1:的初始配置CodeCommit
按照以下步骤设置亚马逊云科技账户,创建和配置 IAM 用户,然后安装Amazon CLI。Amazon CLI 包含一个凭证辅助程序,您需要对其进行配置,以便通过 HTTPS 方式连接 CodeCommit 存储库。
创建和配置用于访问的 IAM 用户CodeCommit
要创建亚马逊云科技账户,请前往http://aws.amazon.com
然后选择注册。 在您的亚马逊云科技账户中创建 IAM 用户或使用现有用户。确保您拥有与该 IAM 用户关联的访问密钥 ID 和私有访问密钥。有关更多信息,请参阅在您的亚马逊云科技账户中创建 IAM 用户。
注意
CodeCommit 需要使用 Amazon Key Management Service。如果您使用的是现有的 IAM 用户,请确保该用户没有任何策略明确拒绝Amazon KMS需要执行的操作CodeCommit。有关更多信息,请参阅Amazon KMS和加密:
登录Amazon Web Services Management Console,然后通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/
。 -
在 IAM 控制台的导航窗格中,选择用户,然后选择要为其配置的 IAM 用户CodeCommit访问。
在 Permissions 选项卡上,选择 Add Permissions。
-
在 Grant permissions (授予权限) 中,选择 Attach existing policies directly (直接附加现有策略)。
从策略列表中选择 AWSCodeCommitPowerUser 或用于 CodeCommit 访问的其他托管策略。有关更多信息,请参阅Amazon适用于 CodeCommit 的托管策略:
选择要附加的策略后,选择下一页:回顾查看要附加到 IAM 用户的策略列表。如果列表正确,选择 Add permissions。
有关 CodeCommit 管理的策略以及与其他组和用户共享访问存储库的更多信息,请参阅共享存储库和Amazon CodeCommit 的身份验证和访问控制。
安装和配置 Amazon CLI
-
在本地计算机上,下载并安装 Amazon CLI。这是从命令行与 CodeCommit 进行交互的前提条件。我们建议你安装Amazon CLI版本 2。这是最新的主要版本Amazon CLI并支持所有最新功能。这是唯一的版本Amazon CLI支持使用根账户、联合访问权限或临时证书git-remote-codecommit。
有关更多信息,请参阅使用 Amazon 命令行界面进行设置。
注意
CodeCommit仅适用于Amazon CLI版本 1.7.38 及更高版本。作为最佳做法,请安装 Amazon CLI 或将其升级到可用的最新版本。要确定您安装的 Amazon CLI 的版本,请运行 aws --version 命令。
要将旧版本的 Amazon CLI 升级到最新版本,请参阅安装 Amazon Command Line Interface。
-
运行此命令以验证CodeCommit的命令Amazon CLI已安装。
aws codecommit help
此命令返回一个列表CodeCommit命令。
-
配置Amazon CLI使用配置文件使用configure命令,如下所示:。
aws configure
出现提示时,指定Amazon访问密钥和Amazon要与一起使用的 IAM 用户的私有访问密钥CodeCommit。另外,请务必指定Amazon Web Services 区域存储库存在的地方,例如
us-east-2
。系统提示指定默认输出格式时,指定json
。例如,如果您正在为 IAM 用户配置个人资料:AWS Access Key ID [None]:
Type your IAM user Amazon access key ID here, and then press Enter
AWS Secret Access Key [None]:Type your IAM user Amazon 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
jsonhere, and then press Enter
有关创建和配置相关配置文件以与 Amazon CLI 配合使用的详细信息,请参阅以下内容:
连接到存储库或其他存储库中的资源Amazon Web Services 区域,您必须重新配置Amazon 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 和 Amazon Web Services 区域 的更多信息,请参阅 地区和 Git 连接终端节点。有关 IAM、访问密钥和密钥的更多信息,请参阅如何获得证书?和管理 IAM 用户的访问密钥。有关 Amazon CLI 和配置文件的更多信息,请参阅命名配置文件。
-
步骤 2:安装 Git
使用中的文件、提交和其他信息CodeCommit存储库,则必须在本地计算机上安装 Git。CodeCommit 支持 Git 1.7.9 以及更高版本。Git 版本 2.28 支持为初始提交配置分支名称。我们建议使用最新版本的 Git。
要安装 Git,我们推荐以下网站Windows 版 Git
在执行期间出现提示时调整你的 PATH 环境步骤中,从命令行中选择使用 Git 的选项。
(可选)如果您打算将 HTTPS 与包含在中的凭证助手一起使用Amazon CLI而不是为配置 Git 凭据CodeCommit,在配置额外选项页面,请确保启用 Git 凭据管理器选项已清除。Git 凭据管理器仅兼容CodeCommit如果 IAM 用户配置 Git 证书。有关更多信息,请参阅 适用于使用 Git 凭证的 HTTPS 用户 和 Windows 版 Git:Windows 版 Git 安装了 Git,但被系统拒绝访问我的存储库 (403)。
注意
Git 是一个不断发展、定期更新的平台。有时,功能上的更改可能会影响到它与 CodeCommit 协作的方式。如果遇到 Git 和 CodeCommit 特定版本的问题,请参阅故障排除中的信息。
步骤 3:设置凭证助手
Amazon CLI 包含一个可供您配合 CodeCommit 使用的 Git 凭证辅助程序。Git 凭证助手需要Amazon 凭证配置文件,它存储 IAM 用户的副本Amazon访问密钥 ID 和Amazon私有访问密钥(以及默认密钥)Amazon Web Services 区域名称和默认输出格式)。Git 凭证助手使用此信息自动进行身份验证CodeCommit所以你不必在每次使用 Git 进行交互时都输入这些信息CodeCommit。
-
打开命令提示符并使用 Git 运行git config,指定 Git 凭证助手的用法Amazon凭据配置文件,它允许 Git 凭证助手发送存储库的路径:
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 命令行,则必须使用单引号而不是双引号。
-
凭证助手使用默认的Amazon个人资料或亚马逊 EC2 实例角色。如果您已创建要使用的 Amazon 凭证配置文件,例如
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 文件,以指定在连接 CodeCommit 时使用 Amazon 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,然后运行每个的配置Amazon凭证资料。
-
-
运行 git config --global --edit 验证上面的值是否已写入用户配置文件的 .gitconfig 文件(默认为
%HOME%\.gitconfig
或
)。如果成功,您应该能够看到前面的值(以及 Git 全局配置文件中已有的值)。要退出,通常需要键入drive
:\Users\UserName
\.gitconfig:q
,然后按 Enter。
步骤 4:连接到CodeCommit控制台并克隆存储库
如果管理员已将 CodeCommit 存储库的名称和连接详细信息发送给您,您可以跳过该步骤并直接克隆存储库。
连接 CodeCommit 存储库
打开CodeCommit控制台位于https://console.aws.amazon.com/codesuite/codecommit/home
。 -
在区域选择器中,选择Amazon Web Services 区域存储库是在哪里创建的。存储库特定于Amazon Web Services 区域。有关更多信息,请参阅地区和 Git 连接终端节点:
-
从列表中找到您要连接的存储库并选择此存储库。选择 Clone URL (克隆 URL),然后选择克隆或连接到存储库时要使用的协议。此时将复制克隆 URL。
如果您对 IAM 用户使用 Git 凭证或随附的凭证助手,请复制 HTTPS 网址Amazon CLI。
如果您在本地计算机上使用 git-remote-codecommit 命令,请复制 HTTPS (GRC) URL。
如果您与 IAM 用户一起使用 SSH 公钥/私钥对,请复制 SSH 网址。
注意
如果你看到欢迎页面而不是存储库列表,则没有与您的存储库相关联的存储库Amazon账户在Amazon Web Services 区域你在哪里登录。要创建存储库,请参阅创建一个Amazon CodeCommit知识库或按照入门 Git CodeCommit教程中的步骤进行操作。
-
打开命令提示符并运行git clone使用您复制的 HTTPS 网址的命令。这将在运行命令的目录的子目录中创建本地存储库。例如,克隆名为的存储库
MyDemoRepo
到名为的本地存储库my-demo-repo
在中国(北京)区域:git clone https://git-codecommit.cn-north-1.amazonaws.com.cn/v1/repos/MyDemoRepo my-demo-repo
在某些版本的 Windows 上,您可能会看到一条弹出消息,要求您输入用户名和密码。这是 Windows 的内置凭证管理系统,但它与 Amazon CodeCommit 的凭证辅助程序不兼容。选择 Cancel (取消)。
后续步骤
您已满足先决条件。按照中的步骤操作开始使用 CodeCommit 开始使用CodeCommit。