En esta página se usan como ejemplo las URL
- URL del repositorio en el viejo servidor: git@gitlab.atica.um.es:jhidalgo.um.es/prueba_migrar.git
- URL en el nuevo repositorio: git@gitlab.com:umugit/docencia-inves/usr/jhidalgo/prueba_migrada.git
Si todavía no tenemos repositorio nuevo en el destino gitlab.com hay que crear uno. Se puede crear siguiendo Crear proyecto en gitlab.com
Se usan URLs de tipo git y esto significa que estamos usando pares de claves públicas y usamos comunicaciones SSH para llegar al servidor. Las claves SSH las tenemos que configurar como explicamos en Claves SSH para Gitlab.
Migración paso a paso (linea de comandos)
Clonamos el repositorio en nuestro PC
git clone git@gitlab.atica.um.es:jhidalgo.um.es/prueba_migrar.git temp-dir
git fetch --tags
Hacemos chekout de las ramas importantes
(listado de ramas)
git branch -a
dev
master
* otra_rama
remotes/origin/HEAD -> origin/master
remotes/origin/dev
remotes/origin/master
remotes/origin/otra_rama
(checkout de ramas)
git checkout dev
git checkout otra_rama
Comprobamos ramas y etiquetas
git tag
git branch -a
Eliminamos el origen anterior ( en gitlab.atica.um.es)
git remote rm origin
Añadimos el nuevo origen
git remote add origin git@gitlab.com:umugit/docencia-inves/usr/jhidalgo/prueba_migrada.git
Subimos con push ramas (contenido del repositorio) y etiquetas
git push origin --all
git push --tags
Qué es lo que NO hemos migrado
Principalmente:
- Miembros del repositorio y su nivel de permisos
- Variables almacenadas en settings
Efectos secundarios
La rama principal puede llamarse "main" en vez de "master". En Settings→Repository de gitlab.com se puede configurar el comportamiento de las ramas default, protegidas, etc..
Comprobaciones finales
Antes de dar por concluida la migración, podemos ver en gitlab.com que están las ramas y el contenido. También podemos clonar el repositorio en otra carpeta destino desde nuestro equipo local.