我有一台 SVN 服务器,其中有 6 个 (我们称之为 repo1-repo6) 存储库,使用版本 1.6.9。其中五个存储库使用 svnserve -d 提供服务,一个是 mod_dav_svn (httpd)。
1)我在旧服务器上对每个仓库进行了完整转储,然后svnadmin create repo1 repo2 repo3 repo4 repo5 repo6
在新服务器上进行了转储
2) 然后我将cat repo1.dump |svnadmin load repo1
完整转储还原到新服务器。新服务器正在运行 svn 1.6.11。
3)最后,我将svnadmin dump --incremental -r 1000:2000 repo1 > repo1.incremental_dump
在旧服务器和cat repo1.incremental_dump |svnadmin load repo1
新服务器上对每个 repo 进行操作,其中修订版 1000 是我执行完整转储后创建的第一个修订版,而 2000 是最新的修订版。
4)我计划切换 SVN 服务器的 DNS 主机记录中的 IP,使其指向新的服务器 IP。
这是一个可靠的 SVN 迁移计划吗?
答案1
总体来说还好。你忽略了一些(我希望对你来说很明显的)事情
- 在新主机上配置 Apache
- 使用可能已更改的 root 权限运行 snvserver
为了获得更可预测的结果,我建议先使用以下--force-uuid
方式加载:这样新的存储库必须获取相同的 UUUID,因为源和 svn 客户端不会抱怨 UUID 不匹配