Para migrar repositorios de GitLab a GitHub, necesita acceso suficiente al origen (un proyecto en GitLab) y el destino (una organización en GitHub). Después de completar los pasos descritos en este artículo, el acceso y los permisos estarán listos para la migración.
Decidir quién realizará la migración
Si la persona que realizará la migración no es un propietario de la GitHub organización, un propietario de la GitHub organización primero debe concederles el rol de migrador.
- Si es propietario de la GitHub organización y piensa realizar la migración usted mismo, puede seguir leyendo esta guía.
- Si desea asignar el rol de migrador a otra persona, hágalo ahora. A continuación, el migrador debe realizar el resto de los pasos de estas guías. Consulte Concesión del rol de migrador.
Crear un personal access token (classic) en GitHub
A continuación, deberá crear un personal access token (classic), el cual GL2GH extension of the GitHub CLI usará para comunicarse con GitHub. Los ámbitos necesarios para su GitHubpersonal access token (classic) función dependen de su rol y de la tarea que desea completar.
Nota:
Solo puedes usar un personal access token (classic), no un fine-grained personal access token. Esto significa que no puede usar GitHub Enterprise Importer si su organización usa la directiva "Restringir el acceso de personal access tokens (classic) a sus organizaciones". Para más información, consulta Imposición de políticas para tokens de acceso personales en su empresa.
| Tarea | Propietario de la organización | Responsable de la migración |
|---|---|---|
| Asignación del rol de migrador para las migraciones de repositorios | admin:org | |
| Ejecución de una migración de repositorios (organización de destino) | ||
repo, , workflow, admin:org | ||
repo, , workflow, read:org | ||
| Descarga de un registro de migración | ||
repo, , workflow, admin:org | ||
repo, , workflow, read:org | ||
| Recuperar maniquíes | ||
repo, , workflow, admin:org |
Para obtener información sobre cómo crear el token, consulte Administración de tokens de acceso personal.
Creación de un personal access token en GitLab
GitLab personal access token debe tener los api ámbitos y read_repository .
En el caso de las instancias de GitLab autoadministradas, el token debe pertenecer a un administrador, de modo que la exportación se complete y se conserve la atribución del usuario.
Para obtener información sobre cómo crear el token, consulte Personal access tokens la documentación de GitLab.
Configuración de listas de direcciones IP permitidas en GitHub
Si usa GitHubla característica de lista de direcciones IP permitidas, debe agregar los GitHub intervalos IP siguientes a la lista de permitidos de la organización de destino. Consulta Administrar las direcciones IP permitidas en tu organización o Restricción del tráfico de red a la empresa con una lista de direcciones IP permitidas.
Si la organización de destino está activada GitHub.com, deberá permitir las siguientes direcciones IP:
- 192.30.252.0/22
- 185.199.108.0/22
- 140.82.112.0/20
- 143.55.64.0/20
- 135.234.59.224/28 (agregado el 28 de julio de 2025)
- 2a0a:a440::/29
- 2606:50c0::/32
- 20.99.172.64/28 (agregado el 28 de julio de 2025)
Si la organización de destino está en GHE.com, los intervalos que necesita permitir dependen de la región de residencia de datos. Puede obtener una lista de up-to-date de intervalos IP utilizados por GitHub Enterprise Importer con el /meta punto de conexión de la API REST. La clave github_enterprise_importer de la respuesta contiene una lista de los intervalos IP usados para las migraciones.
Permitir que las migraciones omitan los conjuntos de reglas de repositorio
Si la organización de destino o la empresa tiene conjuntos de reglas habilitados, el historial del repositorio migrado puede infringir esas reglas. Para permitir la migración sin deshabilitar los conjuntos de reglas, agregue "Migraciones de repositorio" a la lista de omisión de cada conjunto de reglas aplicable. Esta omisión solo se aplica durante la migración. Una vez completado, los conjuntos de reglas se aplicarán a todas las nuevas contribuciones.
Para configurar la omisión:
- Vaya a cada conjunto de reglas de la empresa u organización.
- En la sección "Lista de exclusión", haga clic en Agregar exclusión.
- Seleccione Migraciones de repositorio.
Para obtener más información, vea Creación de conjuntos de reglas para repositorios de la organización y Configuración de excepciones de reglas para migraciones de repositorio.
Habilitación de exportaciones en GitLab
Los proyectos de GitLab que desea migrar deben estar habilitados para las exportaciones. Consulte Habilitar la exportación de proyectos y la configuración de Sidekiq para las importaciones en la documentación de GitLab.