AWS codecommit migration

时间:2017-10-30 06:48:07

标签: git amazon-web-services aws-codecommit code-migration

可能是它的简单问题,但我无法找到正确的文件来实现这一点。 我有两个aws帐户,即个人P和Office O.为了实验目的,我最初创建了Codecommit并附加了8个GIT项目。 有四个用户使用P aws用户凭证并在过去6个月内访问它。有三个分支和100多个提交。 现在我想将所有这些项目移到官方帐户O而不会丢失提交及其分支的历史。 我可以安全地使用master分支并创建新的repo,但我需要所有的历史和分支。 有人可以帮助我吗?

3 个答案:

答案 0 :(得分:1)

建议查看GitHub,他们建议使用--mirror function "Duplicating a repository"。我的理解是这也适用于AWS CodeCommit。

它使用:

  • git clone --mirror:克隆每个引用(提交,标记, 分支机构)
  • git push --mirror:推送所有内容

这会给:

git clone --mirror https://codecommit-url/exampleuser/repository-to-mirror.git
# Make a bare mirrored clone of the repository

cd repository-to-mirror.git
git remote set-url --push origin https://codecommit-url/exampleuser/mirrored
# Set the push location to your mirror

git push --mirror

答案 1 :(得分:1)

假设您希望继续使用Codecommit。然后,您可以使用git --mirror命令迁移代码库的所有方面。这是一个与您想要的相关的链接

https://aws.amazon.com/blogs/devops/replicating-and-automating-sync-ups-for-a-repository-with-aws-codecommit/

请记住,新存储库的访问凭据将需要IAM服务生成的新凭据。

祝你好运

答案 2 :(得分:1)

基本上,您的目标是使用“镜像”选项克隆完整存储库,并将该存储库推送到另一个帐户中的CodeCommit存储库。这些说明假设您希望为帐户P和O保留相同的存储库名称。(并且假设您的回购名称是MyDemoRepo)。

  1. git clone https://git-codecommit.us-east-1.amazonaws.com/v1/repos/MyDemoRepo --mirror
  2. 配置CodeCommit帐户O的凭据(这可能意味着更新/使现有的操作系​​统凭据缓存无效)
  3. cd MyDemoRepo
  4. git push --mirror