Amazon CodeCatalyst ya no está disponible para nuevos clientes. Los clientes existentes pueden seguir utilizando el servicio con normalidad. Para obtener más información, consulte Cómo migrar de CodeCatalyst.
Clonación de un repositorio de Git existente en un repositorio de código fuente
Puede clonar un repositorio de Git existente en un repositorio de código fuente vacío en Amazon CodeCatalyst. Esta es una forma rápida de empezar a usar CodeCatalyst con código que anteriormente estaba alojado en otro proveedor de repositorios de Git. Puede clonar el contenido del repositorio creando un clon espejo e insertando después el duplicado en CodeCatalyst. Como alternativa, si tiene un repositorio local del repositorio cuyo contenido quiera agregar a CodeCatalyst, puede agregar el repositorio de código fuente de CodeCatalyst como otro remoto al repositorio local y, después, subirlo al repositorio de código fuente vacío. A este respecto, ambos enfoques son igualmente válidos. El uso de un clon espejo no solo mapea las ramificaciones, sino que también mapea todas las referencias. Es una forma sencilla y limpia de crear una copia funcional del repositorio en CodeCatalyst. Añadir un remoto a un repositorio local que apunte a un repositorio de código fuente de CodeCatalyst vacío añadirá el contenido del repositorio a CodeCatalyst, pero también le permitirá realizar inserciones desde el repositorio local tanto al repositorio de código fuente de CodeCatalyst como al repositorio remoto de Git original. Esto puede resultar útil si quiere mantener el código en diferentes repositorios remotos, pero también puede provocar conflictos si otros desarrolladores confirman código solo en uno de los remotos.
Para realizar esta tarea se utilizan comandos básicos de Git. Existen muchas formas de realizar tareas en Git, incluida la clonación. Para obtener más información, consulte la documentation de Git
importante
Debe crear un repositorio vacío en CodeCatalyst antes de poder clonar contenido en él. También debe tener un token de acceso personal. Para obtener más información, consulte Creación de un repositorio de código fuente vacío y Creación de un token de acceso personal.
Uso de git clone --mirror para clonar un repositorio de Git existente en CodeCatalyst
-
Desde la consola de CodeCatalyst, vaya al proyecto en el que haya creado un repositorio vacío.
-
En la página de resumen del proyecto, seleccione el repositorio que desee de la lista y, a continuación, elija Ver repositorio. Como alternativa, en el panel de navegación, elija Código y, a continuación, elija Repositorios de origen. Seleccione el nombre del repositorio vacío de la lista de repositorios de código fuente para el proyecto.
-
Copie la URL del clon HTTPS del repositorio vacío. Necesitará esto para insertar el clon espejo. Por ejemplo, si asignó el nombre MyExampleRepo al repositorio de código fuente en el proyecto MyExampleProject del espacio ExampleCorp y su nombre de usuario es LiJuan, la URL del clon podría tener el siguiente aspecto:
https://LiJuan@git.us-west-2.codecatalyst.aws/v1/ExampleCorp/MyExampleProject/MyExampleRepo -
En una línea de comandos o una ventana del terminal, utilice el comando
git clone --mirrorpara crear un clon espejo del repositorio de Git que desee clonar en CodeCatalyst. Por ejemplo, si desea crear un clon espejo del repositorio codecatalyst-blueprints en GitHub, introduzca el siguiente comando:git clone --mirrorhttps://github.com/aws/codecatalyst-blueprints.git -
Cambie los directorios por el directorio en el que ha realizado la clonación.
cdcodecatalyst-blueprints.git Ejecute el comando git push y especifique la URL y el nombre del repositorio de código fuente de CodeCatalyst y la opción --all. (Esta es la URL que copió en el paso 3). Por ejemplo:
git push https://LiJuan@git.us-west-2.codecatalyst.aws/v1/ExampleCorp/MyExampleProject/MyExampleRepo--all
Cómo añadir un remoto e insertar un repositorio local en CodeCatalyst
-
Desde la consola de CodeCatalyst, vaya al proyecto en el que haya creado un repositorio vacío.
-
En la página de resumen del proyecto, seleccione el repositorio que desee de la lista y, a continuación, elija Ver repositorio. Como alternativa, en el panel de navegación, elija Código y, a continuación, elija Repositorios de origen. Seleccione el nombre del repositorio vacío de la lista de repositorios de código fuente para el proyecto.
-
Copie la URL del clon HTTPS del repositorio vacío. Necesitará esto para insertar el clon espejo. Por ejemplo, si asignó el nombre MyExampleRepo al repositorio de código fuente en el proyecto MyExampleProject del espacio ExampleCorp y su nombre de usuario es LiJuan, la URL del clon podría tener el siguiente aspecto:
https://LiJuan@git.us-west-2.codecatalyst.aws/v1/ExampleCorp/MyExampleProject/MyExampleRepo -
En la línea de comandos o en una ventana del terminal, cambie los directorios al repositorio local que quiera insertar en CodeCatalyst.
-
Ejecute el comando git remote -v para ver los controles remotos existentes en el repositorio local. Por ejemplo, si clona un repositorio local de un repositorio de AWS CodeCommit denominado
MyDemoRepoen la región este de EE. UU. (Ohio), el resultado del comando podría tener este aspecto: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)Copie la URL remota si desea seguir utilizando el repositorio.
-
Use el comando
git remote removepara eliminar las URL del repositorio CodeCommit para búsqueda y envío para el origen:git remote remove origin -
Use el comando git remote add para añadir la URL del repositorio de código fuente de CodeCatalyst como remoto de búsqueda y envío para el repositorio local. Por ejemplo:
git remote add origin https://LiJuan@git.us-west-2.codecatalyst.aws/v1/ExampleCorp/MyExampleProject/MyExampleRepoEsto reemplaza la URL de inserción del repositorio de CodeCommit por la URL del repositorio de código fuente de CodeCatalyst, pero no cambia la URL de búsqueda. Por lo tanto, si vuelve a ejecutar el comando git remote -v, verá que ahora está extrayendo (buscando) código del repositorio remoto de CodeCommit, pero la configuración determina que se deben insertar los cambios desde el repositorio local hasta el repositorio de código fuente de CodeCatalyst:
origin https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo(fetch) origin https://LiJuan@git.us-west-2.codecatalyst.aws/v1/ExampleCorp/MyExampleProject/MyExampleRepo (push)Opcionalmente, puede volver a agregar la URL remota de CodeCommit si quiere insertar en ambos repositorios con el comando
git remote set-url:git remote set-url --add --push origin https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo Ejecute el comando
git pushpara insertar el repositorio local en todos los remotos de inserción configurados. Como alternativa, ejecute el comando git push -u -origin y especifique la opción --all para insertar el repositorio local a ambos repositorios. Por ejemplo:git push -u -origin --all
sugerencia
En función de su versión de Git, es posible que --all no funcione para enviar todas las ramificaciones del repositorio local al repositorio vacío. Puede que tenga que revisar e insertar cada ramificación por separado.