Migrar CVS a GIT en sourceforge
Desde hace muchos años, tengo un proyecto en sourceforge usando CVS, https://sourceforge.net/projects/t-gtk/ , es una librería que permite al lenguaje Harbour, tener un GUI Multiplataforma haciendo uso de las librerías GTK+
En proceso para convertir un proyecto de CVS a GIT, es el siguiente;
mkdir directorio && cd directorio
rsync -av rsync://PROJECTNAME.cvs.sourceforge.net/cvsroot/PROJECTNAME/* .
En nuestro caso seria;
mkdir migracion && cd migracion
rsync -av rsync://t-gtk.cvs.sourceforge.net/cvsroot/t-gtk/* .
Esto nos bajo , no el código fuente en si, si no, el repositorio en 'crudo'.
Busca ctx.username = 'cvs2svn', pon tu usuario.
Ahora, dentro del directorio migración, ejecuta;
Bien, en este punto. ya tenemos nuestro CVS pasado a GIT. Podemos mirar la historia, git log, y ver como coincide , para asegurarnos que todo esta OK.
Ahora, vamos a configurar git para decirle quienes somos, solo para este proyecto;
git config user.name "xthefull"
git config user.mail "rafa_@gmail.com"
Ahora solo queda subirlo a sourceforge en nuevo repositorio convertido a git:
git push origin master
Ahora, dentro del directorio migración, ejecuta;
cvs2svn-trunk/cvs2git --options=cvs2git.options --fallback-encoding utf-8
Esto creo un par de directorios en la ruta migracion.
Ahora, creamos un directorio, prueba, y dentro ejecutamos
git clone ssh://thefull@t-gtk.git.sourceforge.net/gitroot/t-gtk/t-gtk
cd prueba
cat ../../cvs2svn-tmp/git-{blob,dump}.dat | git fast-import
git reset --hard
Bien, en este punto. ya tenemos nuestro CVS pasado a GIT. Podemos mirar la historia, git log, y ver como coincide , para asegurarnos que todo esta OK.
Ahora, vamos a configurar git para decirle quienes somos, solo para este proyecto;
git config user.name "xthefull"
git config user.mail "rafa_@gmail.com"
Ahora solo queda subirlo a sourceforge en nuevo repositorio convertido a git:
git push origin master
Podéis ver ahora el resultado final;
Esto es una simplificación de la ayuda obtenida en, que he llevado a cabo y a sido un exito :
http://blog.gorwits.me.uk/2011/06/22/migrate-sourceforge-cvs-repository-to-git/
#url = ssh://thefull@t-gtk.git.sourceforge.net/gitroot/t-gtk/t-gtk
apunte a:
url = ssh://thefull@git.code.sf.net/p/t-gtk/git
Hacer de nuevo un git push origin master y este es el resultado final;
http://sourceforge.net/p/t-gtk/git/commit_browser
Nota:
No sabía que sourceforge tuviera soporte de git en la web, he actualizado el proyecto, he add soporte para git, y solo tenemos que tocar el fichero ./git/config, para que en vez de apuntar a,#url = ssh://thefull@t-gtk.git.sourceforge.net/gitroot/t-gtk/t-gtk
apunte a:
url = ssh://thefull@git.code.sf.net/p/t-gtk/git
Hacer de nuevo un git push origin master y este es el resultado final;
http://sourceforge.net/p/t-gtk/git/commit_browser
No hay comentarios:
Publicar un comentario