Skip to main content

Migrar datos a tu empresa

Después de generar un archivo de migración, puedes importar los datos a tu instancia de destino del GitHub Enterprise Server. Podrás revisar los cambios para detectar posibles conflictos antes de aplicar de manera permanente los cambios a tu instancia de destino.

Aplicar los datos importados en GitHub Enterprise Server

Antes de que puedas migrar los datos a tu empresa, debes prepararlos y resolver cualquier conflicto. Para más información, vea "Preparación para migrar datos a la empresa".

Después de que prepares los datos y resuelvas conflictos, puedes aplicar los datos importados en GitHub Enterprise Server.

  1. Como administrador del sitio, acceda mediante SSH a la instancia de GitHub Enterprise Server de destino.

    $ ssh -p 122 admin@HOSTNAME
  2. Con el comando ghe-migrator import, inicie el proceso de importación. Necesitará:

    $ ghe-migrator import /home/admin/MIGRATION_GUID.tar.gz -g MIGRATION_GUID -u username -p TOKEN
    
    > Starting GitHub::Migrator
    > Import 100% complete /
    • Para especificar dónde se deben almacenar provisionalmente los archivos de migración, anexe --staging-path=/full/staging/path al comando. Tiene como valor predeterminado /data/user/tmp.

Revisar datos de migración

De forma predeterminada, ghe-migrator audit devuelve todos los registros. También te permite filtrar los registros por:

  • Los tipos de registros.
  • El estado de los registros.

Los tipos de registro coinciden con los encontrados en los datos migrados.

Filtros de tipo de registro

Tipo de registroNombre de filtro
Usuariosuser
Las organizacionesorganization
Repositoriosrepository
Teamsteam
Hitosmilestone
Tableros de proyectoproject
Issuesissue
Comentarios de propuestasissue_comment
Solicitudes de incorporación de cambiospull_request
Revisiones de solicitudes de extracciónpull_request_review
Comentarios sobre confirmación de cambioscommit_comment
Comentarios sobre revisiones de solicitudes de extracciónpull_request_review_comment
Versionesrelease
Medidas adoptadas en las solicitudes de extracción o propuestasissue_event
Ramas protegidasprotected_branch

Filtros de estado de registro

Estado de registroDescripción
exportEl registro se exportará.
importEl registro se importará.
mapEl registro se asignará.
renameEl registro se renombrará.
mergeEl registro se fusionará.
exportedEl registro se exportó con éxito.
importedEl registro se importó con éxito.
mappedEl registro se asignó con éxito.
renamedEl registro se renombró con éxito.
mergedEl registro se fusionó con éxito.
failed_exportEl registro no se pudo exportar.
failed_importEl registro no se pudo importar.
failed_mapEl registro no se pudo asignar.
failed_renameEl registro no se pudo renombrar.
failed_mergeEl registro no se pudo fusionar.

Filtrar registros auditados

Con el comando ghe-migrator audit, puede filtrar según el tipo de registro mediante la marca -m. Del mismo modo, puede filtrar por el estado de importación mediante la marca -s. El comando tiene este aspecto:

$ ghe-migrator audit -m RECORD_TYPE -s STATE -g MIGRATION_GUID

Por ejemplo, para ver cada organización y equipo importados con éxito, debes ingresar:

$ ghe-migrator audit -m organization,team -s mapped,renamed -g MIGRATION_GUID
> model_name,source_url,target_url,state
> organization,https://gh.source/octo-org/,https://ghe.target/octo-org/,renamed

Se recomienda encarecidamente auditar todas las importaciones con errores. Para ello, escribirá lo siguiente:

$ ghe-migrator audit -s failed_import,failed_map,failed_rename,failed_merge -g MIGRATION_GUID
> model_name,source_url,target_url,state
> user,https://gh.source/octocat,https://gh.target/octocat,failed
> repository,https://gh.source/octo-org/octo-project,https://ghe.target/octo-org/octo-project,failed

Si tienes alguna duda sobre las importaciones fallidas, comunícate con Soporte de GitHub Enterprise.

Completar la importación en GitHub Enterprise Server

Después de que se aplique tu migración a tu instancia destino y la hayas revisado, desbloquearás los repositorios y los borrarás del origen. Antes de eliminar los datos de origen, se recomienda esperar alrededor de dos semanas para asegurarse de que todo funciona de acuerdo con lo esperado.

Desbloquear repositorios en la instancia de destino

  1. SSH en your GitHub Enterprise Server instance. Si la instancia consta de varios nodos, por ejemplo, si la alta disponibilidad o la replicación geográfica están configuradas, utiliza SSH en el nodo principal. Si usas un clúster, puedes utilizar SSH en cualquier nodo. Para obtener más información acerca del acceso a SSH, consulta "Acceso al shell administrativo (SSH)".

    $ ssh -p 122 admin@HOSTNAME
    1. Desbloquee todos los repositorios importados con el comando `ghe-migrator unlock`. Nececitarás tu GUID de Migración:
    $ ghe-migrator unlock -g MIGRATION_GUID
    > Unlocked octo-org/octo-project

Desbloquear repositorios en el origen

Desbloquear los repositorios de una organización en GitHub.com

Para desbloquear los repositorios en una organización de GitHub.com, enviará una solicitud DELETE al punto de conexión de desbloqueo de migración. Necesitará:

  • Tu token de acceso para autenticación
  • id único de la migración
  • El nombre del repositorio a desbloquear
    curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" -X DELETE \
      -H "Accept: application/vnd.github.wyandotte-preview+json" \
      https://api.github.com/orgs/orgname/migrations/id/repos/repo_name/lock

Borrar los repositorios de una organización en GitHub.com

Después de desbloquear los repositorios de la organización de GitHub.com, tendrá que borrar todos los repositorios que haya migrado antes mediante el punto de conexión de eliminación de repositorios. Necesitarás tu token de acceso para la autenticación:

curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" -X DELETE \
  https://api.github.com/repos/orgname/repo_name

Desbloquear repositorios desde una instancia de GitHub Enterprise Server

  1. SSH en your GitHub Enterprise Server instance. Si la instancia consta de varios nodos, por ejemplo, si la alta disponibilidad o la replicación geográfica están configuradas, utiliza SSH en el nodo principal. Si usas un clúster, puedes utilizar SSH en cualquier nodo. Para obtener más información acerca del acceso a SSH, consulta "Acceso al shell administrativo (SSH)".

    $ ssh -p 122 admin@HOSTNAME
    1. Desbloquee todos los repositorios importados con el comando `ghe-migrator unlock`. Nececitarás tu GUID de Migración:
    $ ghe-migrator unlock -g MIGRATION_GUID
    > Unlocked octo-org/octo-project