恢复空的SVN数据库文件

恢复空的SVN数据库文件,svn,Svn,我试图转储我们的SVN存储库,以便将其迁移到更新的硬件。其中一个修订版给了我一个问题,因此我尝试跳过或“跳转”该修订版,从该数字转储到更高的修订号,但问题仍然存在: svnadmin:无法读取文件“D:\repositories\REPO\u NAME\db\revs\3677”:找到文件结尾 我执行了以下命令: svnadmin dump D:\repositories\REPO\u NAME——修订版4000:5000>D:\4000\u 5000.dmp 所以应该只转储版本4000到500

我试图转储我们的SVN存储库,以便将其迁移到更新的硬件。其中一个修订版给了我一个问题,因此我尝试跳过或“跳转”该修订版,从该数字转储到更高的修订号,但问题仍然存在:

svnadmin:无法读取文件“D:\repositories\REPO\u NAME\db\revs\3677”:找到文件结尾

我执行了以下命令:

svnadmin dump D:\repositories\REPO\u NAME——修订版4000:5000>D:\4000\u 5000.dmp

所以应该只转储版本4000到5000,但由于某种原因,版本范围确实依赖于较低版本

因此,我转到了db/revs目录,查看冲突文件的情况,该文件为空,零字节

我查看了所有的“SVN红皮书”、SVN文档和google,但没有找到任何内容。有许多恢复存储库的示例,但都不起作用。对于exmaple,运行svnadmin recover会引发另一个错误:

“试图将文件指针移动到文件开头之前”

所以我现在有点迷路了,有没有办法恢复一个空文件或将其从转储中排除,这样就不会影响高版本

有没有办法恢复一个空的 档案

显然答案是否定的。您必须从备份中恢复修订文件

或者将其从转储中排除 不影响高级修订

使用
--incremental
开关可以实现此功能:

svn dump D:\repositories\REPO\u NAME--incremental--revision 4000:5000>D:\4000\u 5000.dmp

但是,它不会抱怨,但您在使用svnadmin load组装存储库时会遇到问题,因为它会抱怨某些缺少的节点(如果它们是在rev 3677中添加的)。但这可以给你一个线索,在修订版3677中发生了什么

有没有办法恢复一个空的 档案

显然答案是否定的。您必须从备份中恢复修订文件

或者将其从转储中排除 不影响高级修订

使用
--incremental
开关可以实现此功能:

svn dump D:\repositories\REPO\u NAME--incremental--revision 4000:5000>D:\4000\u 5000.dmp

但是,它不会抱怨,但您在使用svnadmin load组装存储库时会遇到问题,因为它会抱怨某些缺少的节点(如果它们是在rev 3677中添加的)。但这可以给你一个线索,在修订版3677中发生了什么