AWS CodeCommit não está mais disponível para novos clientes. Os clientes atuais do AWS CodeCommit podem continuar usando o serviço normalmente. Saiba mais
As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Migrar um repositório Git para AWS CodeCommit
Você pode migrar um repositório Git existente para um repositório. CodeCommit Os procedimentos neste tópico mostram como migrar um projeto hospedado em outro repositório Git para o CodeCommit. Como parte do processo, você:
-
Conclua a configuração inicial necessária para CodeCommit.
-
Crie um CodeCommit repositório.
-
Clone o repositório e envie-o para o. CodeCommit
-
Visualize arquivos no CodeCommit repositório.
-
Compartilhe o CodeCommit repositório com sua equipe.

Tópicos
Etapa 0: configuração necessária para acesso ao CodeCommit
Antes de migrar um repositório para CodeCommit, você deve criar e configurar um usuário do IAM CodeCommit e configurar seu computador local para acesso. Também é necessário instalar o AWS CLI para gerenciar o CodeCommit. Embora você possa realizar a maioria das CodeCommit tarefas sem ele, ele AWS CLI oferece flexibilidade ao trabalhar com o Git na linha de comando ou no terminal.
Se você já está configurado para CodeCommit, pode pular paraEtapa 1: criar um CodeCommit repositório.
Para criar e configurar um usuário do IAM para acessar CodeCommit
Crie uma conta da Amazon Web Services acessando http://aws.amazon.com
e escolhendo Cadastrar-se. Crie um usuário do IAM ou use um existente na sua conta da Amazon Web Services. Confirme se você tem um ID de chave de acesso e uma chave de acesso secreta associados ao usuário do IAM. Para obter mais informações, consulte Criar um usuário do IAM na conta da Amazon Web Services.
nota
CodeCommit requer AWS Key Management Service. Se você estiver usando um usuário do IAM existente, verifique se não há políticas anexadas ao usuário que neguem expressamente as AWS KMS ações exigidas pelo CodeCommit. Para obter mais informações, consulte AWS KMS e criptografia.
Faça login no AWS Management Console e abra o console do IAM em https://console.aws.amazon.com/iam/
. -
No console do IAM, no painel de navegação, escolha Usuários e, em seguida, escolha o usuário do IAM que você deseja configurar para CodeCommit acesso.
Na guia Permissions, escolha Add Permissions.
-
Em Grant permissions, escolha Attach existing policies directly.
Na lista de políticas, selecione AWSCodeCommitPowerUserou outra política gerenciada para CodeCommit acesso. Para obter mais informações, consulte AWS políticas gerenciadas para CodeCommit.
Depois de selecionar a política que deseja anexar, escolha Próximo: Revisar para revisar a lista de políticas a serem anexadas ao usuário do IAM. Se a lista estiver correta, selecione Add permissions.
Para obter mais informações sobre políticas CodeCommit gerenciadas e compartilhamento de acesso a repositórios com outros grupos e usuários, consulte Compartilhar um repositório e. Autenticação e controle de acesso para o AWS CodeCommit
Para instalar e configurar o AWS CLI
-
Em sua máquina local, baixe e instale AWS CLI o. Esse é um pré-requisito para interagir com a linha CodeCommit de comando. Recomendamos instalar a AWS CLI versão 2. É a versão principal mais recente do AWS CLI e oferece suporte a todos os recursos mais recentes. É a única versão do AWS CLI que suporta o uso de uma conta raiz, acesso federado ou credenciais temporárias com. git-remote-codecommit
Para obter mais informações, consulte Como configurar a interface de linha de AWS comando.
nota
CodeCommit funciona somente com AWS CLI as versões 1.7.38 e posteriores. Como prática recomendada, instale ou atualize AWS CLI para a versão mais recente disponível. Para determinar qual versão do AWS CLI você instalou, execute o aws --version comando.
Para atualizar uma versão mais antiga do AWS CLI para a versão mais recente, consulte Instalando AWS Command Line Interface o.
-
Execute esse comando para verificar se os CodeCommit comandos do AWS CLI estão instalados.
aws codecommit help
Esse comando retorna uma lista de CodeCommit comandos.
-
Configure o AWS CLI com um perfil usando o configure comando, do seguinte modo:.
aws configure
Quando solicitado, especifique a chave de AWS acesso e a chave de acesso AWS secreta do usuário do IAM com CodeCommit a qual usar. Além disso, certifique-se de especificar Região da AWS onde o repositório existe, como
us-east-2
. Quando solicitado pelo formato de saída padrão, especifiquejson
. Por exemplo, se você estiver configurando um perfil para um usuário do 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
jsonhere, and then press Enter
Para obter mais informações sobre como criar e configurar perfis para usar com o AWS CLI, consulte o seguinte:
Para se conectar a um repositório ou recurso em outro Região da AWS, você deve reconfigurar o AWS CLI com o nome de região padrão. Os nomes de região padrão compatíveis CodeCommit incluem:
-
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
Para obter mais informações sobre CodeCommit e Região da AWS, consulteRegiões e endpoints de conexão do Git. Para obter mais informações sobre o IAM, chaves de acesso e chaves secretas, consulte Como consigo credenciais? e Gerenciar chaves de acesso para usuário do IAM. Para obter mais informações sobre os perfis AWS CLI e, consulte Perfis nomeados.
-
Em seguida, você deve instalar o Git.
-
Para Linux, macOS ou Unix:
Para trabalhar com arquivos, commits e outras informações em CodeCommit repositórios, você deve instalar o Git na sua máquina local. CodeCommit suporta as versões 1.7.9 e posteriores do Git. A versão 2.28 do Git é compatível com a configuração do nome de ramificações para as confirmações iniciais. Recomendamos o uso de uma versão recente do Git.
Para instalar o Git, recomendamos sites como o Git Downloads
. nota
O Git é uma plataforma em constante evolução atualizada regularmente. Ocasionalmente, uma alteração de recurso pode afetar a forma como funciona com CodeCommit. Se você encontrar problemas com uma versão específica do Git and CodeCommit, revise as informações em. Solução de problemas
-
Para Windows:
Para trabalhar com arquivos, commits e outras informações em CodeCommit repositórios, você deve instalar o Git na sua máquina local. CodeCommit suporta as versões 1.7.9 e posteriores do Git. A versão 2.28 do Git é compatível com a configuração do nome de ramificações para as confirmações iniciais. Recomendamos o uso de uma versão recente do Git.
Para instalar o Git, recomendamos sites como Git for Windows
. Se você usar esse link para instalar o Git, poderá aceitar todas as configurações padrão da instalação, exceto as seguintes: Quando solicitado durante a etapa Ajustar o seu ambiente PATH, escolha a opção de usar o Git na linha de comando.
(Opcional) Se você pretende usar HTTPS com o auxiliar de credenciais incluído no, em AWS CLI vez de configurar as credenciais CodeCommit do Git, na página Configurando opções extras, verifique se a opção Habilitar o Git Credential Manager está desmarcada. O Gerenciador de Credenciais do Git só é compatível CodeCommit se os usuários do IAM configurarem as credenciais do Git. Para ter mais informações, consulte Para usuários de HTTPS usando credenciais do Git e Git para Windows: eu instalei o Git para Windows, mas o acesso ao meu repositório é negado (403).
nota
O Git é uma plataforma em constante evolução atualizada regularmente. Ocasionalmente, uma alteração de recurso pode afetar a forma como funciona com CodeCommit. Se você encontrar problemas com uma versão específica do Git and CodeCommit, revise as informações em. Solução de problemas
CodeCommit suporta autenticação HTTPS e SSH. Para concluir a configuração, você deve configurar as credenciais do Git para CodeCommit (HTTPS, recomendado para a maioria dos usuários), um key pair SSH para usar ao CodeCommit acessar (SSH) git-remote-codecommit (recomendado para usuários que usam acesso federado) ou o auxiliar de credenciais incluído no (HTTPS). AWS CLI
-
Para ver as credenciais do Git em todos os sistemas operacionais compatíveis, consulte Etapa 3: criar credenciais Git para conexões HTTPS com CodeCommit.
-
Para SSH no Linux, macOS ou Unix, consulte. SSH e Linux, macOS ou Unix: configure as chaves públicas e privadas para Git e CodeCommit.
-
Para ver SSH no Windows, consulte Etapa 3: configurar as chaves públicas e privadas para o Git e CodeCommit.
-
Em git-remote-codecommit, consulte Etapas de configuração para conexões HTTPS AWS CodeCommit com git-remote-codecommit.
-
Para o assistente de credenciais no Linux, macOS ou Unix, consulte Configurar o auxiliar de credenciais (Linux, macOS ou Unix).
-
Para ver o auxiliar de credenciais no Windows, consulte Configuração de auxiliar de credenciais (Windows).
Etapa 1: criar um CodeCommit repositório
Nesta seção, você usa o CodeCommit console para criar o CodeCommit repositório usado no restante deste tutorial. Para usar o AWS CLI para criar o repositório, consulteCriar um repositório (AWS CLI).
Abra o CodeCommit console em https://console.aws.amazon.com/codesuite/codecommit/home
. -
No seletor de região, escolha Região da AWS onde você deseja criar o repositório. Para obter mais informações, consulte Regiões e endpoints de conexão do Git.
-
Na página Repositories (Repositórios), selecione Create repository (Criar repositório).
-
Na página Create repository (Criar repositório), em Repository name (Nome do repositório), insira um nome para o repositório.
nota
Os nomes de repositórios diferenciam maiúsculas de minúsculas. O nome deve ser exclusivo na Região da AWS para sua conta da Amazon Web Services.
-
(Opcional) Em Description (Descrição), insira uma descrição para o repositório. Isso pode ajudar você e outros usuários a identificar a finalidade do repositório.
nota
O campo de descrição exibe o Markdown no console e aceita todos os caracteres HTML e caracteres Unicode válidos. Se você é um desenvolvedor de aplicativos que está usando o
GetRepository
ouBatchGetRepositories
APIs e planeja exibir o campo de descrição do repositório em um navegador da Web, consulte a Referência da CodeCommit API. -
(Opcional) Escolha Adicionar tag para adicionar uma ou mais tags de repositório (um rótulo de atributo personalizado que ajuda você a organizar e gerenciar seus AWS recursos) ao seu repositório. Para obter mais informações, consulte Marcando repositórios em AWS CodeCommit.
-
(Opcional) Expanda Configuração adicional para especificar se você deseja usar a chave padrão Chave gerenciada pela AWS ou sua própria chave gerenciada pelo cliente para criptografar e descriptografar dados nesse repositório. Se você optar por usar sua própria chave gerenciada pelo cliente, deverá garantir que ela esteja disponível no Região da AWS local em que você está criando o repositório e que a chave esteja ativa. Para obter mais informações, consulte AWS Key Management Service e criptografia para AWS CodeCommit repositórios.
-
(Opcional) Selecione Habilitar Amazon CodeGuru Reviewer para Java e Python se esse repositório contiver código Java ou Python e você CodeGuru quiser que o Reviewer o analise. CodeGuru O revisor usa vários modelos de aprendizado de máquina para encontrar defeitos no código e sugerir melhorias e correções nas pull requests. Para obter mais informações, consulte o Guia do usuário do Amazon CodeGuru Reviewer.
-
Escolha Criar.

Após ser criado, o repositório aparecerá na lista Repositories (Repositórios). Na coluna URL, selecione o ícone de cópia e, em seguida, o protocolo (HTTPS ou SSH) a ser usado para se conectar ao CodeCommit. Copie o URL.
Por exemplo, se você nomeou seu repositório MyClonedRepository
e está usando credenciais do Git com HTTPS na região Leste dos EUA (Ohio), a URL terá a seguinte aparência:
https
://git-codecommit.us-east-2.amazonaws.com/MyClonedRepository
Você precisará desse URL posteriormente em Etapa 2: clonar o repositório e enviar para o repositório CodeCommit .
Etapa 2: clonar o repositório e enviar para o repositório CodeCommit
Nesta seção, você clonará um repositório Git existente para o seu computador local, criando o que é chamado de repositório local. Em seguida, você envia o conteúdo do repositório local para o CodeCommit repositório criado anteriormente.
-
No terminal ou no prompt de comando do seu computador local, execute o git clone comando com a
--mirror
opção de clonar uma cópia vazia do repositório remoto em uma nova pasta chamada.aws-codecommit-demo
Este é um repositório vazio destinado apenas à migração. Não é o repositório local para interagir com o repositório migrado em. CodeCommit Você pode criar isso mais tarde, após a conclusão da migração para CodeCommit .O exemplo a seguir clona um aplicativo de demonstração hospedado em GitHub (
https://github.com/awslabs/aws-demo-php-simple-app.git
) em um repositório local em um diretório chamado.aws-codecommit-demo
git clone --mirror
https://github.com/awslabs/aws-demo-php-simple-app.git
aws-codecommit-demo
-
Altere os diretórios para o diretório onde você criou o clone.
cd
aws-codecommit-demo
-
Execute o git push comando, especificando a URL e o nome do CodeCommit repositório de destino e a --all opção. (Este é o URL que você copiou em Etapa 1: criar um CodeCommit repositório).
Por exemplo, se você nomeou seu repositório
MyClonedRepository
e está configurado para usar HTTPS, execute o seguinte comando:git push
https
://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyClonedRepository
--allnota
A opção --all apenas envia por push todas as ramificações para o repositório. Ela não é compatível com o push de outras referências, como tags. Se você deseja enviar tags por push, aguarde até o push inicial ser concluído e, em seguida, envie por push novamente, desta vez usando a opção --tags:
git push ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/
MyClonedRepository
--tagsPara obter mais informações, consulte Git push
no site do Git. Para obter informações sobre enviar grandes repositórios por push, principalmente ao enviar todas as referências por push de uma vez (por exemplo, com a opção --mirror), consulte Migrar um repositório em incrementos.
Você pode excluir a aws-codecommit-demo
pasta e seu conteúdo depois de migrar o repositório para o. CodeCommit Para criar um repositório local com todas as referências corretas para trabalhar com o repositório CodeCommit, execute o git clone
comando sem a --mirror
opção:
git clone
https
://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyClonedRepository
Etapa 3: Exibir arquivos em CodeCommit
Depois de enviar o conteúdo do seu diretório, você pode usar o CodeCommit console para visualizar rapidamente todos os arquivos desse repositório.
-
Abra o CodeCommit console em https://console.aws.amazon.com/codesuite/codecommit/home
. -
Em Repositórios, escolha o nome do repositório (por exemplo,
MyClonedRepository
). -
Visualize os arquivos no repositório das ramificações, do clone URLs, das configurações e muito mais.
Etapa 4: compartilhar o CodeCommit repositório
Quando você cria um repositório no CodeCommit, dois endpoints são gerados: um para conexões HTTPS e outro para conexões SSH. Ambos fornecem conexões seguras em uma rede. Os usuários podem usar um dos dois protocolos. Ambos os endpoints se mantêm ativos, independentemente do protocolo que você recomenda aos usuários. Antes de compartilhar o repositório com outros, é necessário criar políticas do IAM que permitem o acesso de outros usuários ao seu repositório. Forneça essas instruções de acesso aos seus usuários.
Criação de uma política gerenciada por cliente para seu repositório
Faça login no AWS Management Console e abra o console do IAM em https://console.aws.amazon.com/iam/
. -
Na área de navegação do Painel, escolha Policies e, em seguida, Create Policy.
-
Na página Criar políticas, escolha Importar política gerenciada.
-
Na página Importar políticas gerenciadas, em Filtrar políticas, insira o
AWSCodeCommitPowerUser
. Selecione o botão ao lado do nome da política e escolha Importar. -
Na página Create policy (Criar política), escolha JSON. Substitua a parte “*” da
Resource
linha para CodeCommit ações pelo Amazon Resource Name (ARN) do CodeCommit repositório, conforme mostrado aqui:"Resource": [ "arn:aws:codecommit:us-east-2:111111111111:MyDemoRepo" ]
dica
Para encontrar o ARN do CodeCommit repositório, acesse o CodeCommit console, escolha o nome do repositório na lista e escolha Configurações. Para obter mais informações, consulte Visualizar detalhes de repositórios.
Se você quiser que essa política seja aplicada a mais de um repositório, adicione cada um como um recurso especificando o ARN dele. Inclua uma vírgula entre cada instrução de recurso, conforme mostrado aqui:
"Resource": [ "arn:aws:codecommit:us-east-2:111111111111:MyDemoRepo", "arn:aws:codecommit:us-east-2:111111111111:MyOtherDemoRepo" ]
Ao concluir a edição, selecione Revisar política.
-
Na página Revisar Política, em Nome, insira um novo nome para a política (por exemplo,
AWSCodeCommitPowerUser-MyDemoRepo
). Como opção, você pode fornecer uma descrição para essa política. -
Escolha Criar política.
Para gerenciar o acesso ao repositório, crie um grupo do IAM para os usuários, adicione os usuários do IAM ao grupo e anexe a política gerenciada pelo cliente que você criou na etapa anterior. Anexe quaisquer outras políticas necessárias para acesso, como IAMUser SSHKeys ou IAMSelfManageServiceSpecificCredentials.
Faça login no AWS Management Console e abra o console do IAM em https://console.aws.amazon.com/iam/
. -
Na área de navegação Painel, escolha Grupos e Criar novo grupo.
-
Na página Set Group Name (Definir nome de grupo), em Group Name (Nome do grupo), insira um nome para o grupo (por exemplo,
MyDemoRepoGroup
) e escolha Next Step (Próxima etapa). Considere incluir o nome do repositório como parte do nome do grupo.nota
Esse nome precisa ser exclusivo em toda a conta da Amazon Web Services.
-
Selecione a caixa ao lado da política gerenciada pelo cliente que você criou na seção anterior (por exemplo, AWSCodeCommitPowerUser-MyDemoRepo).
-
Na página Análise, escolha Criar grupo. O IAM criará esse grupo com as políticas especificadas já anexadas. O grupo aparecerá na lista de grupos associados à sua conta da Amazon Web Services.
-
Escolha seu grupo na lista.
-
Na página de resumo do grupo, escolha a guiaUsuários e Adicionar usuários ao grupo. Na lista que mostra todos os usuários associados à sua conta da Amazon Web Services, selecione as caixas ao lado dos usuários aos quais você deseja permitir acesso ao CodeCommit repositório e escolha Adicionar usuários.
dica
Você pode usar a caixa Pesquisar para encontrar rapidamente usuários por nome.
-
Depois de adicionar os usuários, feche o console do IAM.
Depois de criar um usuário do IAM para acessar CodeCommit usando o grupo de políticas e as políticas que você configurou, envie a esse usuário as informações necessárias para se conectar ao repositório.
-
Abra o CodeCommit console em https://console.aws.amazon.com/codesuite/codecommit/home
. -
No seletor de região, escolha Região da AWS onde o repositório foi criado. Os repositórios são específicos para um Região da AWS. Para obter mais informações, consulte Regiões e endpoints de conexão do Git.
-
Na página Repositories (Repositórios), escolha o repositório que deseja atualizar.
-
Em Clone URL (Clonar URL), escolha o protocolo que você deseja que os usuários usem. Isso copia a URL clonada para o protocolo de conexão.
-
Envie aos usuários o URL do clone junto com quaisquer outras instruções, como instalar o AWS CLI, configurar um perfil ou instalar o Git. Não se esqueça de incluir as informações de configuração para o protocolo de conexão (por exemplo, HTTPS).