2015-09-14 89 views
-1

我在Windows(2012 R2)上有62200左右的可用SVN仓库(CollabNet Subversion Edge 4.0.11) rev。 我正在使用Apache/2.2.29将它移至Linux RedHat 6.6(CollabNet 1.8.13版)。 我知道迁移的最佳方式是转储存储库。于是我就以下转储命令:当我尝试转储时出现SVN错误

svnadmin dump -r 1:62268 F:\csvn\data\repositories\repos > G:\MyDump.dump 

当我尝试转储窗口库我得到一个错误在修订4255:

svnadmin的:E200002:序列哈希畸形。

接下来我跑得点另一转储,因为我想我可以通过相邻的修改合并到损坏的一个,我运行下面的命令排序了这一点之后:

svnadmin dump -r 4257:62268 F:\csvn\data\repositories\repos > G:\My2dump.dump 

这来了在修订16153一个新的错误有我不解:

svnadmin的:E140001:zlib的(解压缩):损坏的数据: 的解压缩程序svndiff数据失败

然后当我运行第三次转储,因为我是一个贪婪或惩罚。我用下面的命令:

svnadmin dump -r 16154:62268 F:\csvn\data\repositories\repos > G:\My3dump.dump 

但它只是挂起,似乎什么都不做。 这个资源库可以追溯到10年以上,只有过去的6年才是相关的。我能否以某种方式修改转储以提取过去X年或从当前未损坏的修订版并将其加载到新版本库中?那么我会从现在开始倾倒,然后向后退呢? (只是一个想法) 我没有任何好的备份,因为那些服务器和磁带随着最后一次公司搬迁而消失。 谢谢, davidf

回答

0

我可以以某种方式修改转储提取年或修改从本不属于腐败和加载到新的库在过去的X号?

是的,理论上 - 转储是可读的文本文件。 我会建议检测库(svn log -r {DATE})“最古老的需要”的修订和创建一组(比较小)从REV转储到HEAD

所以我会倾倒从现在开始,倒着走可以这么说?

只有“每个转储单个修订”,这将是噩梦。转储在另一个方向发布:“从最旧到最新的”

最后说明

我敢肯定,你有(至少尝试),以检查并修复受损库(阅读svnadmin的可能性)与svnadmin verify|recover|pack

相关问题