

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á.

# Confirmações de push em um repositório do Git adicional
<a name="how-to-mirror-repo-pushes"></a>

Você pode configurar seu repositório local para enviar alterações por push a dois repositórios remotos. Por exemplo, talvez você precise continuar usando sua solução existente de repositório do Git enquanto experimenta o AWS CodeCommit. Siga estas etapas básicas para enviar alterações em seu repositório local CodeCommit e em um repositório Git separado.

**dica**  
Se você não tiver um repositório Git, poderá criar um vazio em um serviço diferente CodeCommit e depois migrar seu CodeCommit repositório para ele. Você deve seguir etapas semelhantes às descritas em [Migrar para o CodeCommit](how-to-migrate-repository.md).

1. No terminal ou no prompt de comando, mude para o diretório do repositório local e execute o comando **git remote -v**. Você deve ver uma saída semelhante a:

   Para HTTPS:

   ```
   origin  https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo (fetch)
   origin  https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo (push)
   ```

   Para o SSH:

    

   ```
   origin  ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo (fetch)
   origin  ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo (push)
   ```

1. Execute o **git remote set-url --add --push origin *git-repository-name*** comando onde *git-repository-name* está a URL e o nome do repositório Git em que você deseja hospedar seu código. Isso altera o destino do push de `origin` para esse repositório Git.
**nota**  
**git remote set-url --add --push** substitui o URL padrão para pushes, por isso, você deve executar esse comando duas vezes, como será demonstrado em etapas posteriores.

   Por exemplo, o comando a seguir altera o push of origin para*some-URL*/MyDestinationRepo:

   ```
   git remote set-url --add --push origin some-URL/MyDestinationRepo
   ```

   Esse comando não retorna nada.
**dica**  
Se você estiver enviando para um repositório Git que exige credenciais, certifique-se de configurar essas credenciais em um auxiliar de credenciais ou na configuração da string. *some-URL* Caso contrário, as operações de envio para esse repositório falharão.

1. Execute o comando **git remote -v** novamente, o que deve criar uma saída semelhante a:

   Para HTTPS:

   ```
   origin  https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo (fetch)
   origin  some-URL/MyDestinationRepo (push)
   ```

   Para o SSH:

   ```
   origin  ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo (fetch)
   origin  some-URL/MyDestinationRepo (push)
   ```

1. Agora adicione o CodeCommit repositório. Execute **git remote set-url --add --push origin** novamente, desta vez com a URL e o nome de repositório de seu repositório CodeCommit.

   Por exemplo, o comando a seguir adiciona o push of **origin** a https://git-codecom mit.us-east-2.amazonaws. com/v1/repos/MyDemoRepo:

   Para HTTPS:

   ```
   git remote set-url --add --push origin https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo
   ```

   Para o SSH:

    

   ```
   git remote set-url --add --push origin ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo
   ```

   Esse comando não retorna nada.

1. Execute o comando **git remote -v** novamente, o que deve criar uma saída semelhante a:

   Para HTTPS:

   ```
   origin  https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo (fetch)
   origin  some-URL/MyDestinationRepo (push)        
   origin  https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo (push)
   ```

   Para o SSH:

    

   ```
   origin  ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo (fetch)
   origin  some-URL/MyDestinationRepo (push)        
   origin  ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo (push)
   ```

   Agora você tem dois repositórios Git como destino para seus push, mas seus push vão para /primeiro. *some-URL* MyDestinationRepo Se o push ao repositório falhar, suas confirmações não serão enviadas por push para nenhum dos repositórios.
**dica**  
Se o outro repositório exigir credenciais que você queira inserir manualmente, considere alterar a ordem dos envios para que você os envie primeiro. CodeCommit Execute **git remote set-url --delete** para excluir o repositório para onde o push foi enviado primeiro e, depois, execute **git remote set-url --add** para adicioná-lo novamente para que se torne o segundo destino do push na lista.   
Para obter mais opções, consulte a documentação do Git.

1. Para verificar se você agora está enviando por push para ambos os repositórios remotos, use um editor de texto para criar o seguinte arquivo de texto no repositório local:

   ```
   bees.txt
   -------
   Bees are flying insects closely related to wasps and ants, and are known for their role in pollination and for producing honey and beeswax.
   ```

1. Execute **git add** para preparar a alteração no repositório local:

   ```
   git add bees.txt
   ```

1. Execute **git commit** para confirmar a alteração no repositório local:

   ```
   git commit -m "Added bees.txt"
   ```

1. Para enviar o commit do repositório local para seus repositórios remotos, execute **git push -u *remote-name* *branch-name*** where *remote-name* é o apelido que o repositório local usa para os repositórios remotos e *branch-name* é o nome da ramificação a ser enviada para o repositório.
**dica**  
Você só precisa usar a opção `-u` na primeira vez em que você enviar por push. Em seguida, as informações de rastreamento upstream são definidas.

   Por exemplo, executar **git push -u origin main** mostraria que o push foi enviado aos dois repositórios remotos nas ramificações esperadas, com uma saída semelhante a:

   Para HTTPS:

   ```
   Counting objects: 5, done.
   Delta compression using up to 4 threads.
   Compressing objects: 100% (3/3), done.
   Writing objects: 100% (3/3), 5.61 KiB | 0 bytes/s, done.
   Total 3 (delta 1), reused 0 (delta 0)
   To some-URL/MyDestinationRepo
      a5ba4ed..250f6c3  main -> main
   Counting objects: 5, done.
   Delta compression using up to 4 threads.
   Compressing objects: 100% (3/3), done.
   Writing objects: 100% (3/3), 5.61 KiB | 0 bytes/s, done.
   Total 3 (delta 1), reused 0 (delta 0)
   remote:
   To https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo
      a5ba4ed..250f6c3  main -> main
   ```

   Para o SSH:

   ```
   Counting objects: 5, done.
   Delta compression using up to 4 threads.
   Compressing objects: 100% (3/3), done.
   Writing objects: 100% (3/3), 5.61 KiB | 0 bytes/s, done.
   Total 3 (delta 1), reused 0 (delta 0)
   To some-URL/MyDestinationRepo
      a5ba4ed..250f6c3  main -> main
   Counting objects: 5, done.
   Delta compression using up to 4 threads.
   Compressing objects: 100% (3/3), done.
   Writing objects: 100% (3/3), 5.61 KiB | 0 bytes/s, done.
   Total 3 (delta 1), reused 0 (delta 0)
   remote:
   To ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo
      a5ba4ed..250f6c3  main -> main
   ```

Para obter mais opções, consulte a documentação do Git.