Por motivos de trabajo, junto a mi equipo debimos migrar todos nuestros repositorios. Al principio pensamos que sería una locura, pero afortunadamente no lo fue... Acá les comparto los pasos para migrar un repo de un server a otro, sin perder los commits que era importante para nosotros.
En la terminal o línea de comandos, según corresponda, ingresamos la siguiente instrucción:
git clone --bare https://github.de.origen.com/Organizacion_o_Usuario/mi_repo.git
Debemos cambiar la instrucción según nuestras necesidades, «github.de.origen.com» corresponde a la URL del servidor donde está actualmente nuestro repo. «Organizacion» o «Usuario» se debe reemplazar con el nombre de la organización o el nombre de usuario, según correspoda. Finalmente «mi_repo.git» es la URL de nuestro repositorio.
Con esto, tenemos un clon de nuestro repositorio remoto, con todos los commits y demás información necesaria para la migración.
Ahora, debemos ir al servidor de destino, creamos el repo y copiamos la URL, luego, en nuestro «repo local clonado» cambiamos la dirección remota de la siguiente manera:
git remote set-url origin https://nuevo.seridor.github.com/Organizacion_o_Usuario/mi_repo.git
Con esto, apuntamos el repositorio local a la nueva ubicación en el nuevo servidor remoto. Ahora, sólo queda por realizar la migración de los datos. Para ello, realizamos lo siguiente:
git push --mirror https://nuevo.seridor.github.com/Organizacion_o_Usuario/mi_repo.git
al terminar el proceso, la migración estará lista.