This is quick guide, howto Backup (dump) and Restore (load) SVN (Subversion) repository on Linux. SVN backup and restore is useful when you want to move your repos to new server or you need to recover your data.
1. Backup (dump) SVN (Subversion) repository:
$ svnadmin dump /path/to/reponame > /path/to/reponame.dump
2. Gzip Created Dump:
$ gzip -9 /path/to/reponame.dump
3. SVN Dump and Gzip Dump with One-liner:
$ svnadmin dump /path/to/reponame | gzip -9 > /path/to/reponame.dump.gz
4. Restore (load) SVN (Subversion) repository
4.1. Unzip reponame.dump.gz:
$ gunzip /path/to/reponame.dump.gz
4.2. Create Empty SVN (Subversion) Repository
$ svnadmin create /path/to/reponame
4.3. Setup SVN (Subversion) Repository Permissions
$ chown -R svnuser:svngroup /path/to/reponame
$ chown -R apache:apache /var/www/svn/testrepo
4.4. Load Data to Repository from SVN (Subversion) Backup
$ svnadmin load /path/to/reponame < /path/to/reponame.dump
5. Automatic SVN (Subversion) Repository Backups:
$ crontab -e
Add SVN Dump Command to Crontab:
@daily svnadmin dump /path/to/reponame > /path/to/reponame.dump
## OR ##
@weekly svnadmin dump /path/to/reponame > /path/to/reponame.dump
6. More Advanced SVN Dump Example with Time and Date and Gzip:
@daily svnadmin dump /path/to/reponame | gzip -9 > /path/to/reponame-$(date +"\%Y-\%m-\%d-\%T").dump.gz