将svn存储库db格式从1.6降级到1.5

时间:2011-01-24 10:05:59

标签: svn migration

我确实有一个不寻常的情况,因为我必须将svn服务器从svn-server 1.6迁移到svn-server 1.5。问题是没有降级工具可用。有没有人知道某些脚本或者是否已经降级了svn存储库?

干杯,

凯文

3 个答案:

答案 0 :(得分:6)

除了Wim的建议svnsync之外,另一个选项是完全转储/重新加载;使用Subversion 1.6 svnadmin转储例如。

svnadmin dump --incremental --deltas > dump_file

然后使用1.5工具将其重新加载到一个干净的存储库

svnadmin create repository_15
svnadmin load repository_15 < dump_file

然后,您必须将旧存储库中的挂钩复制到新存储库中,如果您使用该存储库,则运行svnadmin pack

答案 1 :(得分:5)

您可以使用svnsync将内容从一个存储库移动到另一个存储库。

通常svnsync旨在使只读镜像保持最新状态,但我相信它也适用于一次性迁移。它还具有纯粹作为SVN客户端工作的优势,因此您无需在服务器上进行管理访问。

答案 2 :(得分:5)

从subversion 1.8开始,可以在不切换工具的情况下创建兼容的存储库。

提取

使用svnadmin dumpsvnrdump为远程存储库提取现有subversion存储库的内容:

svnadmin dump --incremental --deltas /path/to/local/repository > /tmp/repository.dump

重新创建v1.5兼容

使用svnadmin创建一个新的1.5兼容存储库并加载以前转储的内容:

svnadmin create --compatible-version 1.5 /path/to/local/repository_15
svnadmin load /path/to/local/repository_15 < /tmp/repository.dump

挂钩和其他存储库设置不会被转移,需要手动设置。

Subversion 1.7

Subversion 1.7支持使用the deprecated --pre-1.6-compatible标志创建兼容存储库的功能。