Acerca de las migraciones desde Azure DevOps
Puedes usar GitHub Enterprise Importer para migrar repositorios de Azure DevOps a GitHub Enterprise Cloud (GitHub.com o GHE.com).
Solo puedes usar GitHub Enterprise Importer para migrar desde Azure DevOps Cloud, no desde Azure DevOps Server. Si actualmente usas Azure DevOps Server y quieres realizar la migración a GitHub, puedes hacerlo primero a Azure DevOps Cloud. Para más información, consulta Migración a Azure DevOps en el sitio de Azure.
Datos que se migran
Actualmente solo se admite la migración de los siguientes datos de repositorio de Azure DevOps a GitHub Enterprise Cloud.
- Origen de Git (incluido el historial de confirmaciones)
- Solicitudes de incorporación de cambios
- Historial de usuarios para solicitudes de incorporación de cambios
- Vínculos de elementos de trabajo en solicitudes de incorporación de cambios
- Datos adjuntos en solicitudes de incorporación de cambios
- Directivas de rama para el repositorio (no se incluyen directivas de rama con ámbito de usuario ni directivas de rama entre repositorios)
Si quiere migrar Azure Pipelines a GitHub Actions, ponte en contacto con el administrador de cuentas de GitHub.
Limitaciones de los datos migrados
Hay límites con respecto a lo que GitHub Enterprise Importer puede migrar. Algunos se deben a limitaciones de GitHub, mientras que otras son limitaciones propias de GitHub Enterprise Importer.
Limitaciones de GitHub
- Límite de tamaño de 2 GB para una única confirmación de Git: ninguna confirmación en el repositorio de Git puede ser superior a 2 GB. Si alguna de las confirmaciones es superior a 2 GB, tendrás que dividirla en confirmaciones más pequeñas, cada una de 2 GB o menos.
- Límite de 255 bytes para las referencias de Git: ninguna referencia de Git, conocida normalmente como "ref", puede tener un nombre de más de 255 bytes. Normalmente, esto significa que las referencias no pueden tener más de 255 caracteres, pero cualquier carácter no ASCII, como los emojis, puede consumir más de un byte. Si alguna de las referencias de Git es demasiado grande, se devolverá un mensaje de error claro.
- Límite de tamaño de archivo de 100 MB: ningún archivo en el repositorio de Git puede ser superior a 100 MB. Considera la posibilidad de usar Git LFS para almacenar archivos grandes. Para obtener más información, vea «Administrar archivos grandes».
Limitaciones de GitHub Enterprise Importer
- Límite de tamaño de 10 GB para un repositorio de Git: este límite solo se aplica al código fuente. Para comprobar si el archivo del repositorio supera el límite, use la herramienta git-sizer y revise el tamaño total del blob en la salida. La herramienta git-sizer también ayuda a identificar posibles problemas relacionados con archivos de gran tamaño, tamaño de blob, tamaño de confirmación y recuentos de árboles que podrían afectar a las migraciones.
- Límite de 10 GB para metadatos: Importer no puede migrar repositorios con más de 10 GB de metadatos. Los metadatos incluyen incidencias, solicitudes de incorporación de cambios, versiones y datos adjuntos. En la mayoría de los casos, los metadatos grandes se deben a los recursos binarios asociados a las versiones. Puedes excluir las versiones de la migración con la marca
migrate-repo
del comando--skip-releases
y, después, mover las versiones manualmente después de la migración. - Objetos de Git LFS no migrados: Importer puede migrar repositorios que usan Git LFS, pero los propios objetos LFS no se migrarán. Se pueden insertar en el destino de la migración como una tarea de seguimiento una vez que se complete la migración. Para obtener más información, vea «Duplicar un repositorio».
- Tareas de seguimiento necesarias: al realizar la migración entre productos de GitHub, determinadas configuraciones no se migran y se deben volver a configurar en el nuevo repositorio. Para obtener una lista de las tareas de seguimiento que necesitarás completar después de cada migración, consulta "Introducción a una migración entre productos de GitHub".
- Funcionalidad de búsqueda de código retrasada: volver a indexar el índice de búsqueda puede tardar unas horas después de migrar un repositorio y las búsquedas de código pueden devolver resultados inesperados hasta que se complete la nueva indexación.
- Los conjuntos de reglas configurados para la organización pueden provocar errores en las migraciones: por ejemplo, si has configurado una regla que requiere que las direcciones de correo electrónico de los creadores de confirmaciones terminen en
@monalisa.cat
y el repositorio que vas a migrar contiene confirmaciones que no cumplen esta regla, se producirá un error en la migración. Para obtener más información sobre los conjuntos de reglas, consulta "Acerca de los conjuntos de reglas". - Es posible que el contenido de Mannequin no se pueda buscar: los maniquíes son usuarios de marcador de posición a los que está asociado el contenido importado (por ejemplo, problemas, solicitudes de incorporación de cambios, comentarios, etc.). Al buscar contenido asociado a un maniquí, como problemas asignados, es posible que no se encuentren los problemas. Una vez reclamado un maniquí, el contenido debe encontrarse a través del nuevo propietario. Para obtener más información, vea «Reclamación de maniquíes para GitHub Enterprise Importer».
Introducción
Antes de migrar desde Azure DevOps, debe planear cómo ejecutará la migración. Antes de migrar los datos, deberá elegir a alguien para ejecutar la migración. Debe conceder a esa persona el acceso necesario para el origen y el destino de la migración. También le recomendamos ejecutar primero una migración de prueba.
Para obtener información general sobre el proceso de migración de principio a fin, consulta Introducción a una migración desde Azure DevOps a GitHub Enterprise Cloud.