Skip to main content

Esta versión de GitHub Enterprise se discontinuó el 2022-10-12. No se realizarán lanzamientos de patch, ni siquiera para problemas de seguridad críticos. Para obtener rendimiento mejorado, seguridad mejorada y nuevas características, actualice a la versión más reciente de GitHub Enterprise. Para obtener ayuda con la actualización, póngase en contacto con el soporte técnico de GitHub Enterprise.

Importar datos desde sistemas de control de versiones de terceros

Usando el conjunto de herramientas git-import, puedes importar desde Subversion, Mercurial y Team Foundation Version Control a los repositorios Git en GitHub Enterprise Server.

Importar proyectos de Mercurial

  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
  2. Haz un clon sin procesar del proyecto mediante el comando a continuación, especificando la URL del proyecto de origen y una ruta a un repositorio temporal:

    $ git-import-hg-raw HG-CLONE-URL /PATH/REPO-NAME.git
    # Creates a new repository with one or more Git refs in "refs/import/" in the specified path.
  3. Revise el archivo separado por comas (CSV) en /PATH/REPO-NAME.git/git-import/raw-authors.csv. Debería contener estas columnas:

    • ID: el creador, tal y como se almacena en el repositorio original, seguido de un identificador único
    • NAME: el creador, tal y como se almacena en el repositorio original

    Para asignar creadores desde el repositorio original a una dirección de correo electrónico y un nombre, cree un archivo CSV con las columnas ID,(ignored),GIT_EMAIL,GIT_NAME, que reemplazan la información del creador por "ID" con "GIT_EMAIL" y "GIT_NAME".

    Ejemplo:

    • Id. del creador original: octocat@111111-2222-3333-4444-55555555555

    • Nueva dirección de correo electrónico: octocat@github.com

    • Nombre nuevo: The Octocat

      Para mapear el autor original a un nuevo usuario de Git, el archivo CSV debería incluir la línea:

      octocat@111111-2222-3333-4444-55555555555, ,octocat@github.com,The Octocat

  4. Reescribe los autores y las ramas utilizando el archivo CSV:

    $ git-import-rewrite --flavor hg --authors /PATH/AUTHORS-MAP-FILE.csv /PATH/REPO-NAME.git
  5. Si aún no lo has hecho, crea un nuevo repositorio vacío en GitHub Enterprise Server.

  6. Cambia el directorio de trabajo actual por tu repositorio local.

  7. Sube el repositorio importado a GitHub Enterprise Server:

    $ git push --mirror PUSH-URL-ON-GITHUB-ENTERPRISE

Importar proyectos de Subversion

  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
  2. Haz un clon sin procesar del proyecto mediante el comando a continuación, especificando la URL del proyecto de origen y una ruta a un repositorio temporal:

    $ git-import-svn-raw SVN-CLONE-URL /PATH/REPO-NAME.git
    # Creates a new repository with one or more Git refs in "refs/import/" in the specified path.
  3. Revise el archivo separado por comas (CSV) en /PATH/REPO-NAME.git/git-import/raw-authors.csv. Debería contener estas columnas:

    • ID: el creador, tal y como se almacena en el repositorio original, seguido de un identificador único
    • NAME: el creador, tal y como se almacena en el repositorio original

    Para asignar creadores desde el repositorio original a una dirección de correo electrónico y un nombre, cree un archivo CSV con las columnas ID,(ignored),GIT_EMAIL,GIT_NAME, que reemplazan la información del creador por "ID" con "GIT_EMAIL" y "GIT_NAME".

    Ejemplo:

    • Id. del creador original: octocat@111111-2222-3333-4444-55555555555

    • Nueva dirección de correo electrónico: octocat@github.com

    • Nombre nuevo: The Octocat

      Para mapear el autor original a un nuevo usuario de Git, el archivo CSV debería incluir la línea:

      octocat@111111-2222-3333-4444-55555555555, ,octocat@github.com,The Octocat

  4. Reescribe los autores y las ramas utilizando el archivo CSV:

    $ git-import-rewrite --flavor svn --authors /PATH/AUTHORS-MAP-FILE.csv /PATH/REPO-NAME.git
  5. Si aún no lo has hecho, crea un nuevo repositorio vacío en GitHub Enterprise Server.

  6. Cambia el directorio de trabajo actual por tu repositorio local.

  7. Sube el repositorio importado a GitHub Enterprise Server:

    $ git push --mirror PUSH-URL-ON-GITHUB-ENTERPRISE

Importar proyectos de Team Foundation Version Control

  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
  2. Haz un clon sin procesar del proyecto mediante el comando a continuación, especificando la URL del proyecto de origen y una ruta a un repositorio temporal:

    $ git-import-tfs-raw TEAM-FOUNDATION-CLONE-URL /PATH/REPO-NAME.git
    # Creates a new repository with one or more Git refs in "refs/import/" in the specified path.
  3. Revise el archivo separado por comas (CSV) en /PATH/REPO-NAME.git/git-import/raw-authors.csv. Debería contener estas columnas:

    • ID: el creador, tal y como se almacena en el repositorio original, seguido de un identificador único
    • NAME: el creador, tal y como se almacena en el repositorio original

    Para asignar creadores desde el repositorio original a una dirección de correo electrónico y un nombre, cree un archivo CSV con las columnas ID,(ignored),GIT_EMAIL,GIT_NAME, que reemplazan la información del creador por "ID" con "GIT_EMAIL" y "GIT_NAME".

    Ejemplo:

    • Id. del creador original: octocat@111111-2222-3333-4444-55555555555

    • Nueva dirección de correo electrónico: octocat@github.com

    • Nombre nuevo: The Octocat

      Para mapear el autor original a un nuevo usuario de Git, el archivo CSV debería incluir la línea:

      octocat@111111-2222-3333-4444-55555555555, ,octocat@github.com,The Octocat

  4. Reescribe los autores y las ramas utilizando el archivo CSV:

    $ git-import-rewrite --flavor tfs --authors /PATH/AUTHORS-MAP-FILE.csv /PATH/REPO-NAME.git
  5. Si aún no lo has hecho, crea un nuevo repositorio vacío en GitHub Enterprise Server.

  6. Cambia el directorio de trabajo actual por tu repositorio local.

  7. Sube el repositorio importado a GitHub Enterprise Server:

    $ git push --mirror PUSH-URL-ON-GITHUB-ENTERPRISE

Información adicional