在Linux中如何备份和恢复SVN存储库

时间:2019-05-19 01:26:28  来源:igfitidea点击:

Subversion是一种流行的版本管理系统,广泛用于应用程序开发。
作为一名系统管理员,我们必须知道备份的重要性。
因此,在本地服务器和远程系统上保存所有svn存储库的备份。
本文将通过命令行在Linux系统上备份和恢复svn存储库。
我们还可以在基于Debian的系统和基于Redhat的系统上设置自己的SVN服务器。

备份SVN存储库

Subversion提供了 svnadmin实用程序来管理svn存储库。
我们还可以使用 svnadmin命令对svn存储库进行备份。

svnadmin dump /var/svn/myrepo > /backup/svn/myrepo.dump

* Dumped revision 0.
* Dumped revision 1.
* Dumped revision 2.
....

我们还可以用gzip压缩备份并节省磁盘空间。
使用以下命令备份svn存储库,并使用gzip命令压缩它。

svnadmin dump /var/svn/myrepo | gzip -9 > /backup/svn/myrepo.dump.gz

恢复SVN存储库

现在,如果需要从备份中恢复svn存储库。
使用以下示例从备份文件恢复存储库。
对于本例,我们将创建一个新的存储库来恢复转储。
首先使用create选项创建一个新的存储库。

svnadmin create /var/svn/mynewrepo

现在使用以下命令将backup还原到新创建的存储库。

svnadmin load /var/svn/mynewrepo < /backup/svn/myrepo.dump

<<< Started new transaction, based on original revision 1
     * adding path : svn-auth-screen.PNG ... done.
     * adding path : template.txt ... done.

------- Committed revision 1 >>>

<<< Started new transaction, based on original revision 2
     * adding path : file1.txt ... done.
     * adding path : file2.txt ... done.

------- Committed revision 2 >>>