Этот инкрементальный дамп SVN с использованием номера ревизии может помочь вам
.#!/bin/bash
for i in $(ls /export/subversion); do
j=$(echo $i | sed -e "s/\.//g")
if [ "$i" = "$j" ]; then
if [ ! -d /export/backup/subversion/$i ]; then svnadmin create /export/backup/subversion/$i; fi
locnum=$(/usr/bin/svnlook youngest /export/subversion/$i)
remnum=$(/usr/bin/svnlook youngest /export/backup/subversion/$i)
newnum=$(($remnum + 1))
if [ "$locnum" -eq "$remnum" ]; then
echo $i $locnum-$remnum;
else
echo $i $locnum-$newnum-$remnum
if [ "$locnum" -ge "$remnum" ]; then
if [ "$remnum" -eq 0 ]; then
svnadmin dump /export/subversion/$i | svnadmin load -q --bypass-prop-validation --force-uuid /export/backup/subversion/$i
else
svnadmin dump /export/subversion/$i --incremental -r $newnum:$locnum | svnadmin load -q --bypass-prop-validation /export/backup/subversion/$i
fi
fi
fi
fi
done
Используйте инструменты резервного копирования ... Неважно, что у вас есть хранилище для удаления. Вы можете оформить заказ с помощью svn (извлечение является инкрементным), а затем запустить любой инструмент резервного копирования, который вы хотите использовать для своей локальной копии. Если вы можете запускать резервные копии с сервера, на котором размещены ваши репозитории, это даже лучше.
Для инструментов резервного копирования, проверьте Ubuntu wiki .