Subversion Backup Tools
These tools allow you to setup a subversion backup system which can run unattended and will be triggered by any commit.
Nobody likes to see a whole lot of project history go up in smoke. A simplistic cron job might get your repository dumped on a nightly basis, but doesn't give you anything in the way of convenience backups and requires a lot of administration overhead compared to this "set it and forget it" approach. You may want to backup a subversion database on every commit or just every 10. For the extremely paranoid, several forms of backup may also be desired. Subversion uses a nice system called a "hook", which serves as a perfect trigger to backup your subversion database.
This setup allows you to schedule various backup methods on top of each other. My setup is using full dumps at increments of 50, with hotcopies at every 11,21,31, and incremental dumps at 5,10,15...
There is currently no support for clearing-out the leftovers, so this needs to be addressed if you are concerned about space usage.
For more details on svn hooks, see the SVN Book.
- scheduler (runs the scheduled jobs)
- inc_backup (if you want 'smart' incremental backups)
- YAML.pm (for reading config files)
- hot-backup.py (if you want to run hot-copies)
Feel free to contact me if you are interested in consulting or support.