Skip to main content

Preparación para la migración de Azure DevOps a GitHub

Planee la migración mediante la comprensión de la escala de tiempo, qué datos se migrarán y la estructura organizativa.

Determine cuánto debe migrar

Define tu cronograma, que en gran medida determinará tu enfoque. El primer paso para determinar la escala de tiempo consiste en obtener un inventario de lo que necesitas migrar.

  • Número de repositorios
  • Número de solicitudes de incorporación de cambios

Nota:

La duración de la migración se basa en gran medida en el número de pull requests en un repositorio. Si quiere migrar 1000 repositorios y cada repositorio tiene 100 solicitudes de incorporación de cambios en promedio, es probable que la migración sea muy rápida. Si solo quiere migrar 100 repositorios, pero cada uno tiene 75 000 solicitudes de incorporación de cambios en promedio, la migración tardará mucho más y requerirá más planeación y pruebas.

Recomendamos el comando inventory-report en el ADO2GH extension of the GitHub CLI. Este comando se conectará con la API de Azure DevOps y, a continuación, creará varios archivos CSV. repos.csv contiene información sobre tus repositorios, incluyendo el número de pull requests.

Para generar los archivos CSV, use el comando siguiente, reemplazando YOUR_ADO_ORG por la organización en Azure DevOps.

Shell
gh ado2gh inventory-report --ado-org YOUR_ADO_ORG

Después de realizar el inventario de los repositorios que necesita migrar, compara los datos del inventario contra tu cronograma deseado.

  • Si la organización puede soportar un mayor grado de cambio, es posible que puedas migrar todos los repositorios a la vez, y completar los esfuerzos de migración en unos días.
  • Si tiene equipos que no pueden migrar al mismo tiempo, es posible que quiera procesar por lotes y escalonar las migraciones para que se ajusten a las escalas de tiempo de los equipos, lo que amplía el esfuerzo de migración.

Determinación de la GitHub estructura organizativa

A continuación, planee la estructura organizativa que creará en GitHub. ADO y GitHub tienen diferentes formas de organizar el trabajo de una empresa.

  • ADO: Organización > proyectos de equipo > repositorios
  •           GitHub: Empresa > organización > repositorios
    

Después de migrar a GitHub, solo debe tener una cuenta empresarial y un pequeño número de organizaciones propiedad de esa empresa. Cada organización de ADO debe corresponder a una sola organización en GitHub.

Nota:

El concepto de un proyecto de equipo, que se usa para agrupar repositorios en ADO, no existe en GitHub. No se recomienda crear una organización en GitHub para cada proyecto de equipo en ADO, ya que esto puede dar lugar a una gran lista de repositorios sin agrupar dentro de cada organización. Pero puedes administrar el acceso a grupos de repositorios mediante la creación de equipos.

Si desea dividir el esfuerzo de migración en lotes, la nueva estructura puede ayudarle a determinarlos. Si tienes más de una organización en ADO y los repositorios de cada organización tienen un tamaño razonable, considera la posibilidad de procesar por lotes por organización.

  1. Decide cuál será la nueva organización estructural.
  2. Decida si necesitas dividir el esfuerzo de migración en lotes más pequeños.
  3. Si es así, decide cómo quieres dividir las migraciones.

Configuración de permisos de repositorio

Dado que los permisos funcionan de forma diferente en GitHub que en ADO, GitHub Enterprise Importer no intenta migrar permisos de repositorio de ADO.

Cuando use la CLI de ADO2GH, GitHub Enterprise Importer creará dos equipos en GitHub para cada proyecto de equipo de ADO. A cada equipo se le concede un nivel de acceso diferente a todos los repositorios que se han originado en el proyecto de equipo.

EquipoAcceso a los repositorios migrados
TEAM-PROJECT-MantenedoresResponsable de mantenimiento
TEAM-PROJECT-AdminsAdministrador

Para conceder acceso a los repositorios migrados, puedes agregar personas a estos equipos. Puede hacerlo manualmente en GitHub, o si eligió vincular los equipos a grupos de Azure Active Directory (AAD) durante la migración, administrando la pertenencia a grupos en AAD. Para más información sobre cómo administrar manualmente la pertenencia a equipos, consulta Agregar miembros de la organización a un equipo.