Tuve el mismo problema que en code.google.com: verifiqué algunos archivos que no deberían ser accesibles a través del historial en googlecode, pero no quise abandonar todo el historial, después de buscar en Google, volver a intentar y reintentando tuve éxito. Debajo de la receta que funcionó para mi pequeño proyecto (6.5 MB, 90 revisiones).La mayor parte del conocimiento provenía de googlecode, el resto en su mayoría del svn redbook
En primer lugar crear un repo local en la que descargar cesión temporal de googlecode a:
svnadmin create /tmp/your_local_repo
crear el archivo/tmp/isd_gc/ganchos/pre-revprop- cambiar con contenidos
#!/bin/bash
exit 0
hacerlo ejecutable:
chmod +x /tmp/isd_gc/hooks/pre-revprop-change
si falla en esta sección, lo más probable es que vea un error: Revprop cambio bloqueado por pre-revprop-change hook (código de salida 255) sin salida.
ahora se puede inicializar el SVN de sincronización code.google.com
svnsync init --username [email protected] file:///tmp/your_local_repo https://yourproject.googlecode.com/svn
y empezar a descargar toda la historia:
svnsync sync --username [email protected] file:///tmp/your_local_repo
Committed revision 1.
propiedades copiadas de revisión 1
Transmisión de datos de archivo .......................
propiedades copiadas de revisión 87.
Ahora vamos a crear un archivo de volcado que se alimenta a svndumpfilter para eliminar archivos no deseados.
svnadmin dump . > /tmp/tst_dump_gc.dmp
utilice svndumpfilter para eliminar el primer archivo no deseado de la misma.
svndumpfilter exclude /trunk/unwanted file_1.jsvg </tmp/tst_dump_gc.dmp> /tmp/tst_dump_clean1.dmp
Lo tira 1 nodo:
'/ trunk/file_new.jsvg no deseada'
quitar segundo archivo no deseado:
svndumpfilter exclude /trunk/unwanted file_2.jsvg </tmp/tst_dump_clean1.dmp> /tmp/tst_dump_clean2.dmp
recrear "viejo temp repo"
rm -rf /tmp/your_local_repo
svnadmin create /tmp/your_local_repo
carga filtrada dum p en repo
[/tmp]$svnadmin load --ignore-uuid your_local_repo < /tmp/tst_dump_clean2.dmp
comprobar que todo está bien en un cliente SVN (hacer una verificación de antecedentes en el tronco sólo muestra 25 primeros resultados en mi cliente SVN).
svnsync sync --username [email protected] https://yourproject.googlecode.com/svn
De hecho, comprueba las sumas de comprobación a medida que vuelve a cargar los datos. Acabo de intentar este enfoque para un problema similar. :) – Iain
Esto funcionará, pero necesitará actualizar el md5sum para cualquier archivo (rutas de nodos) que se edite. En vim puede usar ctrl-v para resaltar la sección que representa el archivo, luego escriba ":! Md5sum" para obtener el nuevo hash. El archivo comienza después de la línea PROPS-END, y finaliza con dos líneas en blanco seguidas por la siguiente línea "Node-Path:". –