Skip to content
Incremental backup tool for Subversion
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.


Type Name Latest commit message Commit time
Failed to load latest commit information.


This script allows you to make incremental backups of a SVN repository. Unlike 'hotcopy' backups, these can efficiently be backed up via rsync or duplicity and can be done while the repository is in use.


Automatic recovery:

Use to automatically process the backup log and .svnz files too re-create a new SVN repository.

Manual Recovery:

  • use 'svnadmin create' to create a new repository.
  • use 'svnadmin load' to restore all of the backup files, in order.
svnadmin create /tmp/test
gzcat 0-100.svnz | svnadmin load /tmp/test
gzcat 101-110.svnz | svnadmin load /tmp/test


This script allows you to restore SVN repository backups made with It does not perform incremental restores, only complete ones.


The expectation here is that BACKUPDIR contains a backup created by and that REPODIR is either does not exist or is empty. BACKUPDIR REPODIR

Version History

Version .16-beta changes

  • Fixed a critical issue where the conf/ and hooks/ directories were not being restored to the correct path.

Version .15-beta changes

  • Fixed an issue where moving the backup directory would cause to see the backup as invalid.

Version .14-beta changes

  • Fixed bad logic in the utility file path code.
  • Added a set of common path locations to the search path.

Version .13-beta changes

  • Improved lock file detection to prevent concurrent execution, and added a message stating the age of the lockfile if one is found.

Version .12-beta changes

  • Fixed an incorrect file test operator in

Version .11-beta changes

  • Added backup and restore of the conf/ and hooks/ directories.
  • Preserve and restore the user/group ownership of the SVN repository.

Version .10-beta changes

  • Added locating utilities from within PATH so that this script should run without modification on most systems.

Version .9-beta changes

  • Added using /tmp/svnbackup-BACKUPDIR.lock as a lock-file to prevent concurrent execution of or which could corrupt backups and prevent complete restores.
  • Added error handling in case the external call to svnadmin fails.
You can’t perform that action at this time.