Skip to main content

Importación de repositorios mediante programación

Puede importar repositorios mediante programación a GitHub.com.

Acerca de la importación mediante programación de repositorios

En la siguiente guía, puedes 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.

Acerca del desuso de la API de REST de importaciones de origen

Los puntos de conexión de la API de REST para administrar las importaciones de origen permitían la importación mediante programación de repositorios accesibles a través de Internet a GitHub.com. Para más información, consulta "Importaciones de Código Fuente" en la documentación de REST API.

El 12 de abril de 2024, GitHub dejará de usar todos los puntos de conexión enumerados en "Importaciones de Código Fuente" en la documentación de la API de REST. Si actualmente usa estas operaciones, deberá realizar cambios en el código o la aplicación dejará de funcionar el 12 de abril de 2024.

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 «Horquillas».

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.

Puedes 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 «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.

Puedes 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».

Información adicional