svnadmin 从 svn 1.4 加载到 1.7

Posted

技术标签:

【中文标题】svnadmin 从 svn 1.4 加载到 1.7【英文标题】:Svnadmin load from svn 1.4 to 1.7 【发布时间】:2017-09-20 17:43:53 【问题描述】:

我正在尝试将远程 Subversion 服务器从 1.4 升级和迁移到 1.7

我首先从旧服务器转储存储库

svnrdump dump https://path/to/myRepo > myRepo.out

然后我在我的新服务器上创建了一个新的 svn 存储库

svnadmin create /svn/myRepo

然后我尝试将转储文件加载到其中

svnadmin load /svn/myRepo < myRepo.out

这得到了最初的几个修订,但后来我得到了这个错误

svnadmin: E125012: Invalid character in hex checksum

当前服务器在 linux 操作系统(可能是 CentOS 5 或 6)上运行 subversion 1.4.0,而新的服务器是带有 svn 1.7.14 的 CentOS 7

我正在尝试在没有根访问旧服务器的情况下进行迁移,但我确实在新服务器上有它。关于可能导致此问题的任何想法?

【问题讨论】:

【参考方案1】:

首先,您必须在旧服务器上运行 svnadmin verify 以检查存储库的完整性和一致性。

与其远程运行svnrdump,不如运行svnadmin dump 来生成历史转储流并将其传输到新计算机。使用svnadmin load 将其加载到新存储库。

请注意,svnadmin dumpsvnrdump dump 生成的转储流不包含除修订历史之外的任何内容。您需要手动将挂钩脚本(如果有)移动到新存储库。

附带说明一下,您应该了解,您现在正在从一个非常旧且不受支持的 SVN 1.4 实例升级到另一个旧的 SVN 1.7 实例。 SVN 1.7 不再受支持并且不接收错误和安全修复。您应该计划更新到 SVN 1.9,而不是迁移到 SVN 1.7。

【讨论】:

谢谢!从 1.4 服务器制作转储文件允许它被 1.7 服务器加载。此外,SVN 1.7 正是 C​​entOS7 附带的,但我会确保升级到最新版本。

以上是关于svnadmin 从 svn 1.4 加载到 1.7的主要内容,如果未能解决你的问题,请参考以下文章

svnadmin 加载到现有目录?

从 svnadmin hotcopy 创建 SVN 存储库

svnadmin 加载子目录

SVN 加载新存储库

svnadmin 加载校验和错误

将转储加载到新存储库后的 SVN 日志