一般性问题

问:什么是 Amazon CodeCommit?

Amazon CodeCommit 是一种安全、高度可扩展的托管源代码控制服务,可使团队更轻松地进行代码协作。使用 Amazon CodeCommit,您无需运营自己的源代码控制系统或担心其基础设施的扩展。您可以使用 Amazon CodeCommit 将代码中的任何内容存储到二进制文件中,它将与您的现有 Git 工具无缝协作。
 
问:什么是 Git?

Git 是一种开源的分布式版本控制系统。要使用 Amazon CodeCommit 存储库,您可以使用 Git 命令行界面 (CLI) 或任何可用的 Git 客户端。要了解有关 Git 的更多信息,请参阅 Git 文档。要了解将 Amazon CodeCommit 与 Git 结合使用的更多信息,请参阅 Amazon CodeCommit 入门
问:哪些人应该使用 Amazon CodeCommit?

Amazon CodeCommit 专为需要安全、可靠且可扩展的源代码控制系统来存储和对其代码进行版本控制的软件开发人员设计。此外,Amazon CodeCommit 还可供任何需要易于使用、完全托管且受版本控制的数据存储的人使用。例如,IT 管理员可以使用 Amazon CodeCommit 来存储脚本和配置。网页设计人员可以使用 Amazon CodeCommit 来存储 HTML 页面和图像。
问:Amazon CodeCommit 与其他基于 Git 的源代码控制系统有何不同?
 
Amazon CodeCommit 提供很多其他 Git 源代码控制系统不提供的功能:
  • 完全托管 – 使用 Amazon CodeCommit,您无需托管、维护、备份和扩展自己的源代码控制服务器。
  • 安全 – Amazon CodeCommit 自动加密您的传输中文件和静态文件。Amazon CodeCommit 与 Amazon Identity and Access Management (IAM) 集成,从而使您可以将用户特定的权限分配给您的存储库。
  • 高可用性 – Amazon CodeCommit 构建于 Amazon S3 和 Amazon DynamoDB 等高度可扩展、冗余和持久的 亚马逊云科技 服务之上。
  • 可扩展 - Amazon CodeCommit 允许您存储任意数量的文件,且没有存储库大小限制。
  • 更快的开发生命周期 - Amazon CodeCommit 保持您的存储库接近 亚马逊云科技 云中的构建、分阶段和生产环境。这样,您就可以提高开发生命周期的速度和频率。
问:Amazon CodeCommit 与受版本控制的 S3 存储桶相比较如何?

Amazon CodeCommit 专为协作软件开发而设计。它管理多个文件中的多批次更改、提供并行分支并包括版本差异比较(“差异比较”)。相比之下,Amazon S3 版本控制支持恢复各个文件的既往版本,但不支持跟踪跨多个文件或协作软件开发所需的其他功能的批量更改。

使用 Amazon CodeCommit

问:如何开始使用 Amazon CodeCommit?
 
您可以登录 亚马逊云科技管理控制台、创建存储库并通过 Git 来开始使用存储库。如果您希望了解该服务的简介,请参阅 入门,其中包含了分步教程。
问:如何创建存储库?

您可以从 亚马逊云科技 管理控制台或使用 Amazon 命令行界面 (Amazon CLI)Amazon 开发工具包或 Amazon CodeCommit API 创建存储库。
问:如何更新存储库中的文件?

您可以直接从 CodeCommit 控制台编辑您的文件,也可以使用 Git 来处理存储库。以 Git 命令为例,您可以使用 git clone 命令创建 Amazon CodeCommit 存储库的本地副本。对本地文件进行更改并在准备好保存更改时使用 git commit 命令。最后,使用 git push 命令将更改上传到 Amazon CodeCommit 存储库。有关分步说明,请参阅 Amazon CodeCommit 入门
问:如何将我的现有存储库导入 Amazon CodeCommit 中?

您可以使用 Git 将任何现有的 Git 存储库导入 Amazon CodeCommit 中。对于 Subversion 和 Perforce 等其他存储库,您可以使用 Git 导入程序首先将其迁移到 Git 存储库中。有关导入 Git 存储库的分步说明,请参阅 将现有存储库迁移到 Amazon CodeCommit。 有关导入本地或未受到版本控制的内容的分步说明,请参阅 Git 迁移文档
问:Amazon CodeCommit 目前支持哪些 Git 操作?
 
Amazon CodeCommit 目前支持 clone、pull、push 和 fetch 命令。
问:Amazon CodeCommit 是否支持 Git 子模块?

是。Amazon CodeCommit 可以与包含子模板的 Git 存储库结合使用。
问:使用 Amazon CodeCommit 时的服务限制是什么?

有关服务限制的信息,请参阅 限制
问:我可以在 CodeCommit 中存储的单个文件的最大大小是多少?

存储库中的单个文件大小不能超过 2 GB。
问:我如何备份存储库?

如果您通过执行 full git clone 对存储库进行了本地备份,您可以使用该备份恢复数据。如果您想要进行额外备份,可以通过多种方法执行此操作。一种方法是在备份服务器上安装 Git,并运行使用 git clone 命令的计划作业对存储库拍摄定期快照。如果您希望仅复制增量更改,您可以使用 git pull 而不是 git clone。请注意,根据您设置备份服务器和轮询频率的方式,这些操作可能会产生额外的用户和/或请求费用。
问:我如何恢复已删除的 Amazon CodeCommit 存储库?

删除 Amazon CodeCommit 存储库是一种破坏性单向操作,无法撤销。要恢复已删除的存储库,您需要再次创建存储库,然后使用备份或完整克隆所生成的本地副本来上传数据。我们建议您使用 IAM 策略和 MFA 保护来限制可删除存储库的用户。有关更多详细信息,请参阅常见问题的安全部分中的“我是否可以使用 Amazon Identity and Access Management (IAM) 来管理对 Amazon CodeCommit 的访问权限”。
问:我如何使用 Amazon CodeCommit 管理代码查看?

CodeCommit 支持代码查看,并且使您能够对代码分支设置权限。请参阅我们的文档,以获取有关代码查看或分支级权限的帮助。
 
问:如何将我的持续集成系统与 Amazon CodeCommit 集成?

可以将持续集成 (CI) 系统配置为使用 Git 从 Amazon CodeCommit 中拉取代码。
问:如何使用 Amazon CodeCommit 创建 webhook?

您可以在 Amazon Simple Notification Service (SNS) 控制台中使用 HTTP 终端节点和 webhook 所需的 URL 创建一个 SNS 主题。然后,您可以从 Amazon CodeCommit 控制台中将该 SNS 主题配置到使用触发器的存储库事件中。
问:是否可以出于安全分析和运营故障排除的目的获得从我的账户发起的 Amazon CodeCommit Git 操作和 API 调用的历史记录?

是。您可以在 Amazon CloudTrail 控制台中查看最近的 CodeCommit 事件,包括 Git 操作和 API 调用。对于持续的事件记录,您可以在 Amazon S3 存储桶中创建跟踪并记录事件。有关更多信息,请参阅使用 Amazon CloudTrail 以日志形式记录 Amazon CodeCommit API 调用。

安全性

问:是否可以使用 Amazon Identity and Access Management (IAM) 来管理 Amazon CodeCommit 的访问权限?

是。Amazon CodeCommit 支持 资源级权限。对于每个 Amazon CodeCommit 存储库,您都可以指定哪些用户可以执行哪些操作。您还可以为 CodeCommit 操作指定 亚马逊云科技 Multi-Factor Authentication (MFA)。这样,您便可以为删除存储库等破坏性操作增加一级额外的保护。除了 Amazon CodeCommit API 之外,您还可以将 git pull 和 git push 指定为控制从 Git 客户端进行访问的操作。例如,您可以通过允许用户在存储库上访问 git pull 而不是访问 git push 来为存储库创建只读用户。有关将 IAM 用于 Amazon CodeCommit 的更多信息,请参阅 Amazon CodeCommit 的身份验证和访问控制。有关使用 MFA 对 API 访问进行身份验证的更多信息,请参阅 配置受 MFA 保护的 API 访问
问:Amazon CodeCommit 支持哪些通信协议?

您可以使用 HTTPS 或 SSH 协议,或使用这两种协议与 Amazon CodeCommit 进行通信。要使用 HTTPS,请先安装 Amazon CLI。Amazon CLI 会安装一个 Git 凭证协助程序,该程序可以使用 亚马逊云科技 凭证进行配置。它将使用 签名版本 4 签名规范自动签署对 Amazon CodeCommit 的所有 HTTPS 请求。要使用 SSH,用户可以创建自己的公有-私有密钥对并将其公有密钥添加到其 IAM 用户中。私有密钥可加密与 Amazon CodeCommit 的通信。有关设置 HTTPS 和 SSH 访问的分步说明,请参阅 设置 Amazon CodeCommit 页面。
问:要想访问 Amazon CodeCommit,我应该在防火墙中打开哪些端口?

您必须在端口 22 (SSH) 或端口 443 (HTTPS) 上打开对 Amazon CodeCommit 服务终端节点的出站访问。
问:如何在 Amazon CodeCommit 中加密我的存储库?

存储库会自动静态加密。无需客户进行操作。Amazon CodeCommit 使用 Amazon Key Management Service (KMS) 加密存储库。您创建第一个存储库时,您的 亚马逊云科技 账户下会创建一个 亚马逊云科技 托管的 CodeCommit 密钥。有关详细信息,请参阅 Amazon CodeCommit 存储库的加密

区域

问:Amazon CodeCommit 支持哪些区域?

有关 CodeCommit 在不同区域的具体提供情况,请参阅 区域性产品和服务

计费

问:Amazon CodeCommit 的费用是多少?

Amazon CodeCommit 的费用为每月每个活跃用户 RMB 6.96 元。对于每个活跃用户,您的账户将获得每月 10 GB 的额外限额和该月 2000 个 Git 请求。未使用的存储限额和 Git 请求不会结转到后面的月份。如果您需要为用户提供更多存储或 Git 请求,将针对额外的使用量按照每月每 GB 收取 RMB 0.42 元和每个 Git 请求收取 RMB 0.007 元。用户可以根据需要存储尽可能多的 Git 存储库。使用量每个月计算一次,含括所有区域,并自动计入到账单中。有关更多详细信息,请参阅定价页面。
问:Amazon CodeCommit 中活跃用户的定义是什么?

活跃用户指的是在当月通过 Git 请求或使用 亚马逊云科技 管理控制台访问 Amazon CodeCommit 存储库的任何唯一的 Amazon Identity(IAM 用户/角色、联合用户或根账户)。使用唯一的 Amazon Identity 访问 CodeCommit 的服务器被计为一个活动用户。
问:哪些 Git 请求被视为每月限额?

Git 请求包括传输存储库对象的任何 push 或 pull 命令。如果由于本地和远程分支是最新的而不存在对象传输,则请求不计入您的 Git 请求限额。

了解有关 Amazon CodeCommit 定价的更多信息

访问定价页面
准备好开始构建了吗?
Amazon CodeCommit 入门
还有其他问题?
联系我们

开始使用亚马逊云科技免费构建

开始使用亚马逊云科技免费构建

关闭
热线

热线

1010 0766
由光环新网运营的
北京区域
1010 0966
由西云数据运营的
宁夏区域