Never been to DZone Snippets before?

Snippets is a public source code repository. Easily build up your personal collection of code snippets, categorize them with tags / keywords, and share them with the world

About this user

Vsevolod Balashov

« Newer Snippets
Older Snippets »
Showing 1-1 of 1 total  RSS 

backup subversion repository over email

   1  
   2  #!/bin/bash
   3  #
   4  # $Id: repodiff 3 2006-09-21 18:48:39Z sevkin $
   5  #
   6  # subversion repository incremental backup over e-mail
   7  #
   8  # (c) 2006 Vsevolod Balashov under terms of GNU GPL v.2 or later
   9  
  10  SVNROOT=/var/svn
  11  EMAIL=your@email.here
  12  STORE=`mktemp -d`
  13  GPGCRYPT=n
  14  
  15  for REPO in `ls $SVNROOT`; do 
  16  	REPOPATH=$SVNROOT/$REPO;
  17  	if [ -r $REPOPATH/youngest ]; then
  18  		LATEST=`cat $REPOPATH/youngest`
  19  		YOUNGEST=`svnlook youngest $REPOPATH`
  20  		if [ $LATEST -lt $YOUNGEST ]; then
  21  			svnadmin dump $REPOPATH --incremental -r $LATEST:$YOUNGEST >$STORE/$REPO 2>/dev/null
  22  		fi
  23  	else
  24  		svnadmin dump $REPOPATH --incremental >$STORE/$REPO 2>/dev/null
  25  	fi 
  26  	echo $YOUNGEST >$REPOPATH/youngest 
  27  done
  28  
  29  if [ `ls $STORE | wc -w` -gt 0 ]; then
  30  	BACKUP=repodiff_`date -u +%Y%m%d%H%M%S`.tar.bz2
  31  	ATTACH=$STORE/../$BACKUP
  32  	tar  -C $STORE -cjf $ATTACH .
  33  	if [ $GPGCRYPT = y ]; then
  34  		gpg -e -r $EMAIL $ATTACH
  35  		ATTACH=$ATTACH.gpg
  36  	fi
  37  	echo "." | mutt -c $EMAIL -a $ATTACH -s "repository incremental backup"
  38  	rm -f $ATTACH
  39  fi
  40  
  41  rm -rf $STORE
« Newer Snippets
Older Snippets »
Showing 1-1 of 1 total  RSS