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 Servidor de GitHub Enterprise.
En este artículo
- Importar proyectos de Mercurial
- Importar proyectos de Subversion
- Importar proyectos de Team Foundation Version Control
- Leer más
Importar proyectos de Mercurial
-
SSH into tu instancia de servidor de GitHub Enterprise.
$ ssh -p 122 admin@HOSTNAME
-
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 # Crea un nuevo repositorio con uno o más ref de Git en "refs/import/" en la ruta especificada.
-
Revisa el archivo (CSV) separado por coma en
/PATH/REPO-NAME.git/git-import/raw-authors.csv
. Debería contener estas columnas:ID
: el autor tal como se almacena en el repositorio original, seguido de un identificador únicoNOMBRE
: el autor tal como se almacena en el repositorio original
Para mapear autores desde el repositorio original a una dirección de correo electrónico y nombre, crea un nuevo archivo CSV con las columnas
ID,(ignorado),GIT_EMAIL,GIT_NAME
, que reemplace la información de autor por "ID" con "GIT_EMAIL" y "GIT_NAME".Ejemplo:
-
ID del autor original:
octocat@111111-2222-3333-4444-55555555555
-
Nueva dirección de correo electrónico:
octocat@github.com
-
Nuevo nombre:
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
-
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
-
Si aún no lo has hecho, crea un nuevo repositorio vacío en Servidor de GitHub Enterprise.
-
Cambia el directorio de trabajo actual por tu repositorio local.
-
Sube el repositorio importado a Servidor de GitHub Enterprise:
$ git push --mirror PUSH-URL-ON-GITHUB-ENTERPRISE
Importar proyectos de Subversion
-
SSH into tu instancia de servidor de GitHub Enterprise.
$ ssh -p 122 admin@HOSTNAME
-
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 # Crea un nuevo repositorio con uno o más ref de Git en "refs/import/" en la ruta especificada.
-
Revisa el archivo (CSV) separado por coma en
/PATH/REPO-NAME.git/git-import/raw-authors.csv
. Debería contener estas columnas:ID
: el autor tal como se almacena en el repositorio original, seguido de un identificador únicoNOMBRE
: el autor tal como se almacena en el repositorio original
Para mapear autores desde el repositorio original a una dirección de correo electrónico y nombre, crea un nuevo archivo CSV con las columnas
ID,(ignorado),GIT_EMAIL,GIT_NAME
, que reemplace la información de autor por "ID" con "GIT_EMAIL" y "GIT_NAME".Ejemplo:
-
ID del autor original:
octocat@111111-2222-3333-4444-55555555555
-
Nueva dirección de correo electrónico:
octocat@github.com
-
Nuevo nombre:
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
-
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
-
Si aún no lo has hecho, crea un nuevo repositorio vacío en Servidor de GitHub Enterprise.
-
Cambia el directorio de trabajo actual por tu repositorio local.
-
Sube el repositorio importado a Servidor de GitHub Enterprise:
$ git push --mirror PUSH-URL-ON-GITHUB-ENTERPRISE
Importar proyectos de Team Foundation Version Control
-
SSH into tu instancia de servidor de GitHub Enterprise.
$ ssh -p 122 admin@HOSTNAME
-
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 # Crea un nuevo repositorio con uno o más ref de Git en "refs/import/" en la ruta especificada.
-
Revisa el archivo (CSV) separado por coma en
/PATH/REPO-NAME.git/git-import/raw-authors.csv
. Debería contener estas columnas:ID
: el autor tal como se almacena en el repositorio original, seguido de un identificador únicoNOMBRE
: el autor tal como se almacena en el repositorio original
Para mapear autores desde el repositorio original a una dirección de correo electrónico y nombre, crea un nuevo archivo CSV con las columnas
ID,(ignorado),GIT_EMAIL,GIT_NAME
, que reemplace la información de autor por "ID" con "GIT_EMAIL" y "GIT_NAME".Ejemplo:
-
ID del autor original:
octocat@111111-2222-3333-4444-55555555555
-
Nueva dirección de correo electrónico:
octocat@github.com
-
Nuevo nombre:
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
-
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
-
Si aún no lo has hecho, crea un nuevo repositorio vacío en Servidor de GitHub Enterprise.
-
Cambia el directorio de trabajo actual por tu repositorio local.
-
Sube el repositorio importado a Servidor de GitHub Enterprise:
$ git push --mirror PUSH-URL-ON-GITHUB-ENTERPRISE
Leer más
- "Command-line-utilities (Línea de comandos-utilidades)"