Acerca de las migraciones desde Bitbucket Server
Puede utilizar GitHub Enterprise Importer para migrar repositorios de Bitbucket Server a GitHub Enterprise Cloud. Las migraciones de Bitbucket Server solo se admiten para Bitbucket Server o Bitbucket Data Center versión 5.14 o posterior.
Datos que se migran
Actualmente solo se admite la migración de los siguientes datos de repositorio de Bitbucket Server a GitHub Enterprise Cloud.
-
Origen de Git (incluido el historial de confirmaciones)
-
Solicitudes de incorporación de cambios (como comentarios, revisiones de solicitudes de incorporación de cambios, comentarios de revisión de solicitudes de incorporación de cambios en el nivel de archivo y línea, revisores necesarios y datos adjuntos)
Note
Los usuarios pueden recibir un error
500
si intentan ver una solicitud de incorporación de cambios y si la solicitud de incorporación de cambios se ha combinado y la rama principal se ha eliminado en Bitbucket Server antes de la migración. Bitbucket Server quita referencias de Git específicas a objetos de estas solicitudes de incorporación de cambios y, por lo tanto, los objetos de Git asociados a la solicitud de incorporación de cambios no se pueden migrar.
Datos que no se migran
Actualmente, no se migran los datos siguientes.
- Repositorios personales propiedad de los usuarios
- Permisos de rama
- Comentarios sobre confirmación de cambios
- Configuración del repositorio
- Canalizaciones de CI
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 Bitbucket Server, 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, consulte "Introducción a una migración de Bitbucket Server a GitHub Enterprise Cloud".