从(非标准)备份中恢复SVN存储库



托管SVN服务器的机器最近停止工作。IT团队设法从NFS备份中恢复了SVN存储库内容。这就是他们给我的工作:

01/28/2014  03:24 PM    <DIR>          .
01/28/2014  03:24 PM    <DIR>          ..
01/28/2014  03:24 PM    <DIR>          conf
01/28/2014  03:24 PM    <DIR>          dav
01/28/2014  03:24 PM    <DIR>          db
06/21/2013  10:14 AM                 2 format
01/28/2014  03:24 PM    <DIR>          hooks
01/28/2014  03:24 PM    <DIR>          locks
06/21/2013  10:14 AM               251 README.txt

现在,我必须将所有这些"移动"到新的(当前为空的)SVN repo/trunk。当然,我想保留所有现有的SVN历史。。。最好的方法是什么?我可以直接复制/trum下的目录结构吗?

救命!:)

您似乎已经拥有了存储库,不需要创建另一个存储库并将历史记录放在那里。如果您在Windows上并使用TortoiseSVN,请尝试在包含此内容的目录上打开Repobrowser进行检查。

根据dir,从FS视图来看,这是您的存储库。您可以使用file:///协议将其复制到任何(本地)位置,并使用任何SVN客户端打开(列表、签出)。。。或者去非本地,在那里它必须永远存在,并使用与之前相同的方式

@Lazy Badger,@maxim1000您都是对的,但是以这种方式恢复SVN还有一些其他考虑因素。实际上,这是实际存储库文件夹的内部文件结构。然而,首先需要检查在旧服务器上运行的SVN的版本。在这里你可以:

  1. 在新实例上使用相同的SVN版本
  2. 如果需要,请更新您的存储库(以便旧结构可以与新的SVN版本配合使用)

将此文件夹放到SVN的存储库路径中应该很好。它应该可以工作,但检查SVN的版本,然后测试您的存储库,看看是否没有eny故障!

从中得到的教训是:始终将存储库备份到外部位置,并使用svnadmin dump检查此项。我用SVN吃了一堆东西,所以要小心。:D:)

最新更新