

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Envío de confirmaciones a un repositorio de Git adicional
<a name="how-to-mirror-repo-pushes"></a>

Puede configurar el repositorio local para enviar los cambios a dos repositorios remotos. Por ejemplo, puede que desee seguir utilizando la solución del repositorio de Git existente mientras prueba AWS CodeCommit. Sigue estos pasos básicos para enviar los cambios de tu repositorio local a un repositorio CodeCommit de Git independiente.

**sugerencia**  
Si no tienes un repositorio de Git, puedes crear uno vacío en un servicio que no sea CodeCommit y, a continuación, migrar tu CodeCommit repositorio a él. Debe seguir unos pasos similares a los que se detallan en [Migrar a CodeCommit](how-to-migrate-repository.md).

1. En el símbolo del sistema o el terminal, cambie al directorio del repositorio local y ejecute el comando **git remote -v**. Debería ver una salida similar a esta:

   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 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. Ejecuta el **git remote set-url --add --push origin *git-repository-name*** comando where *git-repository-name* es la URL y el nombre del repositorio de Git donde quieres alojar tu código. Esto cambia el destino del envío de `origin` al repositorio de Git.
**nota**  
**git remote set-url --add --push** anula la URL predeterminada de los envíos, de modo que debe ejecutar este comando dos veces tal y como se indica más adelante.

   Por ejemplo, el siguiente comando cambia la inserción de origen a*some-URL*/MyDestinationRepo:

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

   Este comando no devuelve nada.
**sugerencia**  
Si estás accediendo a un repositorio de Git que requiere credenciales, asegúrate de configurarlas en un asistente de credenciales o en la configuración de la *some-URL* cadena. De lo contrario, los envíos a ese repositorio devolverán un error.

1. Si ejecuta el comando **git remote -v** de nuevo, debería ver un resultado similar a este:

   Para HTTPS:

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

   Para SSH:

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

1. Ahora añade el CodeCommit repositorio. Ejecute **git remote set-url --add --push origin** de nuevo, esta vez con la URL y el nombre del repositorio de CodeCommit.

   Por ejemplo, el siguiente comando añade el comando 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 SSH:

    

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

   Este comando no devuelve nada.

1. Si ejecuta el comando **git remote -v** de nuevo, debería ver un resultado similar a este:

   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 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)
   ```

   Ahora tienes dos repositorios de Git como destino para tus empujes, pero estos van primero a*some-URL*/. MyDestinationRepo Si el envío a ese repositorio devuelve un error, las confirmaciones no se envían a ningún repositorio.
**sugerencia**  
Si el otro repositorio requiere credenciales que quieres introducir manualmente, puedes cambiar el orden de las inserciones para que las introduzcas primero. CodeCommit Ejecute el comando **git remote set-url --delete** para eliminar el repositorio al que se envían primero y, a continuación, ejecute **git remote set-url --add** para volver a añadirlo de modo que se convierta en el segundo destino de envío de la lista.   
Para ver más opciones, consulte la documentación de Git.

1. Para comprobar que no se está enviado a los dos repositorios remotos, utilice un editor de texto para crear el siguiente archivo de texto en el repositorio 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. Ejecute **git add** para almacenar el cambio en el repositorio local:

   ```
   git add bees.txt
   ```

1. Ejecute **git commit** para confirmar el cambio en el repositorio local:

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

1. Para enviar la confirmación del repositorio local a tus repositorios remotos, ejecuta **git push -u *remote-name* *branch-name*** where, que *remote-name* es el apodo que el repositorio local usa para los repositorios remotos y *branch-name* es el nombre de la rama que se va a enviar al repositorio.
**sugerencia**  
Solo tiene que utilizar la opción `-u` la primera vez que realice un envío. A continuación, se establece la información de seguimiento ascendente.

   Por ejemplo, la ejecución de **git push -u origin main** mostraría que el envío llegó a los repositorios remotos de las ramificaciones esperadas, con un resultado parecido a este:

   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 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 ver más opciones, consulte la documentación de Git.