Acerca de la importación mediante programación de repositorios
En la siguiente guía, puede aprender a ejecutar mediante programación migraciones de "origen e historial" de repositorios de Git a GitHub.com. Hay diferentes opciones disponibles en función de dónde se almacene el repositorio.
Para obtener más información sobre "origen e historial" y otros tipos de migraciones, consulte "Planeamiento de la migración a GitHub".
El término "repositorio de origen" hace referencia al repositorio que va a importar y "repositorio importado" hace referencia al nuevo repositorio que está creando.
Uso de bifurcaciones
Si el repositorio de origen está en GitHub.com, puede usar una bifurcación en lugar de importar el repositorio. Las bifurcaciones te permiten realizar cambios a un proyecto sin afectar el repositorio original, también conocido como el repositorio ascendente. Después de bifurcar un repositorio, puedes capturar actualizaciones del repositorio ascendente para mantener actualizada la bifurcación y puedes proponer cambios de la bifurcación al repositorio ascendente con solicitudes de incorporación de cambios. Para obtener más información, consulte "Acerca de las bifurcaciones".
Puede bifurcar mediante programación un repositorio usando la API de REST. Para obtener más información, vea «Puntos de conexión de la API de REST para bifurcaciones».
Si el caso de uso cumple cualquiera de los siguientes criterios, no puede usar la bifurcación en lugar de importar directamente el repositorio.
- Quiere que el repositorio importado sea propiedad del mismo usuario u organización que el repositorio de origen.
- Quiere que un usuario u organización pueda importar el mismo repositorio de origen varias veces.
Uso de las plantillas de repositorio
Si el repositorio de origen está en GitHub.com, es posible que pueda utilizar plantillas de repositorio. Puede crear una plantilla a partir de un repositorio existente. Cualquier persona con acceso al repositorio de plantillas puede crear un nuevo repositorio basado en la plantilla con la misma estructura de directorios, ramas y archivos. Para obtener más información, consulte "Crear un repositorio desde una plantilla".
Para usar plantillas de repositorio, debe tener acceso de lectura a un repositorio existente que sea una plantilla o debe tener acceso para crear una plantilla.
Puede crear mediante programación un repositorio a partir de una plantilla de repositorio mediante la API de REST. Para obtener más información, vea «Puntos de conexión de la API de REST para repositorios».
Mediante GitHub Enterprise Importer
Si el repositorio de origen se hospeda en GitHub.com, GitHub Enterprise Server, Azure DevOps Services, Bitbucket Server o Bitbucket Data Center, puede importar el repositorio mediante GitHub Enterprise Importer. Para obtener más información, vea «Acerca de GitHub Enterprise Importer».
Además del historial de control de versiones y de origen, GitHub Enterprise Importer también migra problemas, solicitudes de incorporación de cambios, configuración, etc.
Para usar GitHub Enterprise Importer, debe tener acceso de administrador al repositorio de origen.
Puede importar repositorios mediante programación con GitHub Enterprise Importer utilizando la API de GraphQL.
Mediante la CLI de Git
Si el repositorio de origen es un repositorio de Git, puede llamar a la CLI de Git mediante programación desde el código. Puede crear un repositorio mediante programación utilizando la API de REST de GitHub, después usar comandos como git clone
y git push
para importar el repositorio a GitHub.com.
La forma de llamar a la CLI de Git difiere en función del lenguaje del código. Por ejemplo, en Node.js, puede usar el módulo child_process
o en Ruby, puede usar el módulo open3
. Para obtener más información, vea Proceso secundario en la documentación de Node.js o en el repositorio ruby/open3 en GitHub.com.
Para usar la CLI de Git, debe tener acceso para instalar Git en el sistema que hospeda la aplicación. Para obtener más información, consulte "Introducción: instalación de Git" en la documentación de Git.
Uso de GitHub CLI
Si el repositorio de origen es un repositorio de Git, puede llamar a GitHub CLI mediante programación desde el código. Puede usar gh repo create
para crear un repositorio. Para obtener más información, vea «Acerca del CLI de GitHub».