9

我有一个带有 VisualSVN 服务器的 Windows Server 2008 托管存储库。在客户端计算机上,我有 TortoiseSVN 客户端。

如何创建托管在服务器上的存储库的备份,然后将其还原?

4

2 回答 2

13

来自http://www.visualsvn.com/support/topic/00012/


svnadmin hotcopy您可以使用Subversion 命令备份您的存储库。有关详细信息,请参阅Subversion 文档

请注意,所有其他 VisualSVN Server 相关数据(例如用户权限设置)都存储在您的存储库最顶层文件夹中(默认情况下为 C:\Repositories)。您应该单独备份它们。


要仅保存数据(没有挂钩、配置等),请使用svnadmin dump. 您甚至可以逐步使用它。

从 Subversion 1.7 开始,您可以通过远程运行 svn dump svnrdump

根据您的备份容量,您可以选择始终进行hotcopy,或者偶尔进行一次 hotcopy,更频繁地完成svn dump ,每晚增加svn dump ,等等。

于 2012-05-01T21:03:15.923 回答
9

从 VisualSVN Server 3.6 版本开始,该服务器包括一个内置的计划存储库备份和恢复功能。此外,3.6 版本增加了 SVN 存储库的预定验证

为您的 Subversion 存储库设置计划的存储库备份和验证只需几分钟。有关分步说明,请参阅文章KB106:备份和还原入门

如果您要查找一次性备份,可以使用 Backup-SvnRepository PowerShell cmdlet。要恢复存储库,请使用Restore-SvnRepository

从主下载页面下载最新版本的 VisualSVN 服务器。

在此处输入图像描述


还有其他几种方法可以备份 VisualSVN Server 存储库。检查下面的简短描述。

1.svnadmin hotcopy工具

svnadmin hotcopy允许您制作存储库的安全副本,而不管其他进程是否正在使用存储库。您可以编写一个自定义脚本,该脚本将定期为您的存储库进行备份。

您可以参考 SVNBook 中的以下文章,了解有关 Subversion 存储库备份的更多信息:http: //www.visualsvn.com/support/svnbook/reposadmin/maint/#svn.reposadmin.maint.backup

2.svnsync工具

这是增量备份方法。增量备份方法仅备份自上次备份以来已更改的存储库数据部分。您可以将此工具设置为“主”和“从”,并自动将任何提交复制到其存储库。

有关详细信息,请参阅“svnsync”文章:http: //www.visualsvn.com/support/svnbook/ref/svnsync/

3.卷影复制备份

VisualSVN 服务器及其相关的所有配置都可以使用卷影副本进行备份。

虽然如果在有人提交到 Subversion 存储库时进行卷影复制可能会出现问题,但存储库的最后一个修订版可能已损坏。但是可以使用svnadmin recover命令轻松恢复。

除存储库外,您应备份以下信息:

  1. 存储在存储库根目录中的身份验证和授权文件(默认为'C:\Repositories')。根据您的设置,应该有以下文件:'authz''authz-windows''htpasswd'

  2. %VISUALSVN_SERVER%\certs\存储 SSL 证书信息的文件夹。

  3. %VISUALSVN_SERVER%\conf\存储 VisualSVN 服务器配置文件的文件夹。

  4. HKEY_LOCAL_MACHINE\SOFTWARE\VisualSVN\VisualSVN Server\存储服务器配置的其他部分的注册表项。

于 2012-09-16T06:47:39.500 回答