{"meta":{"title":"Importación de repositorios mediante programación","intro":"Puede importar repositorios mediante programación a GitHub.","product":"Migraciones","breadcrumbs":[{"href":"/es/enterprise-cloud@latest/migrations","title":"Migraciones"},{"href":"/es/enterprise-cloud@latest/migrations/overview","title":"Información general"},{"href":"/es/enterprise-cloud@latest/migrations/overview/programmatically-importing-repositories","title":"Importaciones de repositorios mediante programación"}],"documentType":"article"},"body":"# Importación de repositorios mediante programación\n\nPuede importar repositorios mediante programación a GitHub.\n\n## Acerca de la importación mediante programación de repositorios\n\nEn la siguiente guía, puede aprender a ejecutar mediante programación migraciones de \"origen e historial\" de repositorios de Git a GitHub. Hay diferentes opciones disponibles en función de dónde se almacene el repositorio.\n\nPara obtener más información sobre \"origen e historial\" y otros tipos de migraciones, consulta [Planeamiento de la migración a GitHub](/es/enterprise-cloud@latest/migrations/overview/planning-your-migration-to-github).\n\nEl término \"repositorio de origen\" hace referencia al repositorio que va a importar y \"repositorio importado\" hace referencia al nuevo repositorio que está creando.\n\n## Uso de bifurcaciones\n\nSi el repositorio de origen está en GitHub, es posible que pueda 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.\n\nDespués de bifurcar un repositorio, puedes:\n\n* Capturar actualizaciones del repositorio ascendente para mantener la bifurcación actualizada\n* Contribuir de nuevo al proyecto original mediante la creación de solicitudes de incorporación de cambios desde la bifurcación. Para obtener más información, consulta [Horquillas](/es/enterprise-cloud@latest/pull-requests/reference/forks).\n\nPuede bifurcar mediante programación un repositorio usando la API de REST. Para más información, consulta [Endpoints de la API REST para forks](/es/enterprise-cloud@latest/rest/repos/forks).\n\nSi el caso de uso cumple cualquiera de los siguientes criterios, no puede usar la bifurcación en lugar de importar directamente el repositorio.\n\n* Quiere que el repositorio importado sea propiedad del mismo usuario u organización que el repositorio de origen.\n* Quiere que un usuario u organización pueda importar el mismo repositorio de origen varias veces.\n\n## Uso de las plantillas de repositorio\n\nSi el repositorio de origen está en GitHub, puede usar plantillas de repositorio.\nPuede 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 de plantilla](/es/enterprise-cloud@latest/repositories/creating-and-managing-repositories/creating-a-template-repository).\n\nPara 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.\n\nPuede crear mediante programación un repositorio a partir de una plantilla de repositorio mediante la API de REST. Para más información, consulta [Puntos de conexión de la API de REST para repositorios](/es/enterprise-cloud@latest/rest/repos/repos).\n\n## Uso de GitHub Enterprise Importer\n\nSi el repositorio de origen se hospeda en GitHub, GitHub Enterprise Server, Azure DevOps Services, Bitbucket Server o Bitbucket Data Center, puede importar el repositorio mediante GitHub Enterprise Importer. Para más información, consulta [Acerca de GitHub Enterprise Importer](/es/enterprise-cloud@latest/migrations/using-github-enterprise-importer/understanding-github-enterprise-importer/about-github-enterprise-importer).\n\nAdemá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 y mucho más.\n\nPara usar GitHub Enterprise Importer, debe tener acceso de administrador al repositorio de origen.\n\nPuede importar repositorios de forma programática con GitHub Enterprise Importer la API de GraphQL.\n\n## Mediante la CLI de Git\n\nSi 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 de forma programática mediante la API REST de GitHub y, a continuación, usar comandos como `git clone` y `git push` para importar el repositorio a GitHub.\n\nLa 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, consulte [Proceso secundario](https://nodejs.org/api/child_process.html) en la documentación de Node.js o el [repositorio ruby/open3](https://github.com/ruby/open3) en GitHub.\n\nPara 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](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git)\" en la documentación de Git.\n\n## Uso de GitHub CLI\n\nSi el repositorio de origen es un repositorio Git, puede llamar a GitHub CLI mediante programación desde su código. Puede usar `gh repo create` para crear un repositorio. Para más información, consulta [Acerca de GitHub CLI](/es/enterprise-cloud@latest/github-cli/github-cli/about-github-cli).\n\n## Información adicional\n\n* [Puntos de conexión de la API de REST para repositorios](/es/enterprise-cloud@latest/rest/repos/repos)"}