Inkrementelle SVN-Sicherung

Inkrementelle SVN-Sicherung

Ich habe einige Remote-SVN-Repos und möchte diese inkrementell sichern.

könnte mir jemand helfen, danke?

Antwort1

Antwort2

Verwenden Sie Backup-Tools ... Es spielt keine Rolle, ob Sie das Repository entfernt haben. Sie können es mit svn auschecken (das Auschecken erfolgt inkrementell) und dann jedes gewünschte Backup-Tool für Ihre lokale Kopie ausführen. Wenn Sie Backups vom Server ausführen können, auf dem sich Ihre Repositorys befinden, ist das sogar noch besser.

Für Backup-Tools sieheUbuntu-Wiki.

Antwort3

#!/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

verwandte Informationen