como dice Hubert, svnadmin pack
empaquetará todos los archivos de repositorio individuales en un directorio en un solo archivo grande. Esto le ahorrará algo de espacio, pero solo retrasará el día del juicio final para usted. (Sin embargo, debería hacer que las operaciones de historial sean más rápidas, por lo que es una buena sugerencia de todos modos). Una cosa a tener en cuenta es que solo funciona en directorios fragmentados (es decir, la nueva estructura de directorios es poner 1000 revisiones en un solo directorio, luego iniciar un nuevo directorio) y solo empaqueta los directorios de fragmentos antiguos, no el que tiene la revisión actual en eso.
Por lo tanto, su única opción es eliminar las revisiones antiguas de su historial. Eso requiere svnadmin dump and load, con opcionalmente un filtro para eliminar directorios en su repositorio que ya no necesita. (por ejemplo, ramas temporales antiguas).
Volcar es fácil: svnadmin dump -r xxx:HEAD
donde xxx es la revisión más antigua que desea mantener (es decir, esto volcará las más recientes, por lo que su revisión antigua se descarta, como el archivo). También puede guardar el archivo de las revisiones anteriores al volcarlas ( svnadmin dump -r 1:xxx
)
Una vez que tenga su archivo de volcado, cargarlo es tan fácil como ejecutar svnadmin load pasando el nombre del archivo de volcado. puede ser una buena idea eliminar el repositorio anterior antes de cargar el nuevo, entonces obtendrá el beneficio de las últimas propiedades del sistema de archivos del servidor, si aún no las tiene.
Si desea mantener todas las revisiones anteriores pero filtrar ciertos directorios, querrá ejecutar el archivo de volcado a través de svndumpfilter , que eliminará las rutas especificadas. Tenga en cuenta que querrá volcar sin usar la opción --incremental.
Obviamente, pruebe todas las operaciones localmente: descargue en un archivo local, luego cárguelo en un repositorio temporal en su unidad local (también será más rápido) y compruebe que el historial y la última versión funcionan bien: exporto la última revisión a un directorio y use winmerge para verificar que los archivos sean idénticos a una exportación de la última revisión del repositorio en vivo. Pruébalo también con una revisión histórica si quieres ser paranoico.