【问题标题】:How do I restore an SVN repository from a backup?如何从备份中恢复 SVN 存储库?
【发布时间】:2011-04-13 15:02:21
【问题描述】:

我们有一个 Windows 2003 服务器,安装了 Subversion(特别是 SlikSVN)。 svnserve.exe 进程设置为作为 Windows 服务运行。

服务器有 2 个硬盘驱动器,一个用于操作系统(C:驱动器),一个用于数据(D:驱动器)。我们的 SVN 存储库位于 D:\SVN,但 D: 驱动器最近崩溃了,不再启动。 SVN Windows 服务也拒绝启动(可能是因为它找不到存储库)。

幸运的是,虽然我们有存储库的备份(每晚通过 XCOPY 备份到外部驱动器),但我们现在需要将最新的备份恢复到 C: 驱动器的 C:\SVN。

我该怎么做呢?有人可以给我一个详细的解释。我需要做的就是将最新的存储库备份恢复到同一服务器上的不同位置(在本例中为 C:\SVN)。

我需要运行哪些命令行命令。我需要取消映射 D:\SVN 位置吗?

【问题讨论】:

    标签: svn repository windows-server-2003 restore


    【解决方案1】:

    备份 Subversion 存储库的正确方法是使用 svnadmin hotcopy 命令。在这种情况下:

    生成的备份是完整的 功能 Subversion 存储库,能够 被丢弃作为替代品 您的实时存储库应该有什么 大错特错。

    http://svnbook.red-bean.com/nightly/en/svn.reposadmin.maint.html#svn.reposadmin.maint.backup

    您说您只是将文件复制到其他地方。我建议您尝试将它们复制回来。我建议你之后运行svnadmin verify

    我对@9​​87654324@ 不熟悉,但鉴于它是Windows 服务,您可以随时更改其指向regedit 的参数:

    HKLM\SYSTEM\CurrentControlSet\Services\snvserve\Parameters
    

    【讨论】:

    • 当存储库未使用时,我使用文件系统副本进行备份。它应该与任何其他备份一样好。我不能只是将它复制回 D:\SVN,因为该位置不再存在。如何将存储库位置更改为 C:\SVN?
    • @Saajid Ismail - 转到“开始 -> 运行”(或点击 Win + R)并输入 regedit。浏览左侧树,直到找到 HKLM\SYSTEM\CurrentControlSet\Services\snvserve\Parameters。在右侧面板中,双击ConfigArgs。找到D:\SVN,替换它C:\SVN,然后点击OK。请谨慎操作,因为 regedit 是一个强大的工具,如果您编辑不应编辑的内容,可能会破坏您的系统。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-26
    • 2010-10-01
    • 2012-04-06
    • 1970-01-01
    相关资源
    最近更新 更多