chiark / gitweb /
add signkey
[bin.git] / svn-backup
index 648b7fd893cb8a68890cd2a1bec12d77fce660b9..918c860ab888a6aeede0c40ca4015d162e587633 100755 (executable)
@@ -10,16 +10,23 @@ fi
 
 if [ -n "$OWNER" ]; then
     SVNADMIN="sudo -u $OWNER svnadmin"
+    SVNLOOK="sudo -u $OWNER svnlook"
 else
     SVNADMIN=svnadmin
+    SVNLOOK=svnlook
 fi
 
-REV=`$SVNADMIN youngest "$REPOS"`
+REV=`$SVNLOOK youngest "$REPOS"`
 if [ "`expr "$REV" : '[0-9]\+'`" -eq 0 ]; then
-    echo "$0: svnadmin youngest failed" >&2
+    echo "$0: svnlook youngest failed" >&2
     exit 1
 fi
 
-$SVNADMIN dump "$REPOS" 0 "$REV" > "$DUMP.$REV"
+if [ -f "$DUMP.$REV" ] || [ -f "$DUMP.$REV.bz2" ]; then
+    exit 0
+else
+    $SVNADMIN dump --quiet "$REPOS" -r 0:"$REV" > "$DUMP.$REV"
+    bzip2 "$DUMP.$REV"
+fi
 
 exit 0