SVN: Revisiones dañadas - Userlinux.net

Siguiendo con los problemas de SVN y despues del último hack vimos que varias revisiones anteriores estaban corruptas. Para más inri no eran ni la primera ni la última (fácilmente solucionable) con lo que había que aplicarse un poco más. Con el método "prueba-error" y los dumps pudimos identificar facilmente…

SVN: Revisiones dañadas

11.Jul.2008 ~ 0 Comentarios ~ 866 Lecturas
Siguiendo con los problemas de SVN y despues del último hack vimos que varias revisiones anteriores estaban corruptas. Para más inri no eran ni la primera ni la última (fácilmente solucionable) con lo que había que aplicarse un poco más.

Con el método "prueba-error" y los dumps pudimos identificar facilmente las revisiones conflictivas para proceder a su borrado. Para borrar una revisión intermedia en SVN hay que armarse de paciencia y ser bastante meticuloso.

La solución -tampoco creo que sea la mejor, pero otra vez más funciona- pasó por ir exportando dumps entre las revisiones correctas e ir dejando fuera las malas. Supongamos que queremos dejar fuera la 101 y la 204. Haríamos lo siguiente:
$ svnadmin dump /home/svn/repo/ -r 0:100 > ~/repo-0-100.dump
$ svnadmin dump /home/svn/repo/ -r 102:203 --incremental > ~/repo-102-203.dump
$ svnadmin dump /home/svn/repo/ -r 205:HEAD --incremental > ~/repo-205-head.dump
Ojo con el --incremental, importante hacerlo despues del primer dump para que luego funcionen de forma correcta los loads.

Una vez tenemos los dumps en ficheros procedemos a crear un nuevo repositorio e importarlos con mucho cariño ;)
$ svnadmin create /home/svn/repo2/
$ svnadmin load /home/svn/repo2/ < ~/repo-0-100.dump
$ svnadmin load /home/svn/repo2/ < ~/repo-102-203.dump
$ svnadmin load /home/svn/repo2/ < ~/repo-205-head.dump
Y si todo ha salido bien ya tendremos nuestro nuevo repositorio totalmente limpio de malas hierbas. Ni svn repair ni nada por el estilo, creando dumps ha sido la única forma de recuperar el histórico de cambios que ya dábamos por perdido.

Espero no llevarme más sorpresas derivadas del fallo del servidor, pero está siendo "divertido".

Comentarios


Todavía no hay comentarios

Comentarios


Los comentarios están cerrados: los comentarios se cierran automáticamente una vez pasados 15 días. Si quieres comentar algo acerca de la anotación, puedes hacerlo por e-mail.

Buscar

Cargando...

Últimos comentarios

  • reidrac
  • r0sk
  • Rodrigo Rega
  • minWi
  • r0sk
  • reidrac
  • r0sk
  • deady
  • errece
  • r0sk
  • flexo
  • r0sk
  • MarcosBL
  • r0sk
  • isra

Moneting

Valor de mi cuenta de Facebook según Moneting
Valor de mi cuenta de Twitter según Moneting

Tagcloud

bake ubuntu blogsfera ps3 barça programación conciertos freebsd twitt mundial macosx frases lugo nintendo deportes futbol software iphone vacaciones blog ds league canción opinion juegos cake seguridad champions games linux hack 2008 mac alemania_2006 web bash cumpleaños lucux mysql humor bsd userlinux sysadmin cakephp ssh openbsd 2007 django films personal rfilms apple felicidades blogs debian meme php rsidenotes twitter sidenotes

Archivo

Social

Enlaces de interés