将SVN Repos移动到新服务器

如果我在第一台服务器上使用svnadmin dump,运行svn 1.6.9,并在运行svn 1.6.11的新服务器上恢复,新服务器将具有相同的主机名,这些URL将是相同的,但IP地址将有所不同(我们正在更改旧的DNSlogging以反映新的IP地址):我的用户是否需要重新安置他们的工作副本?

是否还有其他的疑难杂症或警告,或者应该像听起来那么简单? 两者都是红帽服务器或企业Linux的一些味道。

我的用户将不得不重新安置他们的工作副本吗?

这取决于他们如何连接到您的存储库。 如果他们通过主机名连接,那么不。 如果他们通过IP地址连接,那么是的。

是否还有其他的疑难杂症或警告,或者应该像听起来那么简单? 两者都是红帽服务器或企业Linux的一些味道。

这非常简单(给你的细节)。 我已经做了一些SVN迁移(尽pipe没有最近),从Ubuntu到Windows上的Collabnet,再回到Ubuntu或者其他Linux版本。 只是要确定,确保没有人locking任何文件,因为锁在传输过程中会丢失(我们有这个问题几次)。

只要记住要确保两个盒子上的authentication规则是一样的。 如果你使用Apache和mod_ldap那么它可能就像复制你的虚拟主机指令一样简单,但是如果你使用本地用户,那么它可能会更复杂。

不,你的用户不需要重新定位(如果他们在repo-URL中使用主机名),但是你不能忘记在加载阶段使用--force-uuid (新的repo的UUID必须和旧的一样)或者用户在任何操作上都会得到“UUID mistmatch”错误

我经历了几次没有问题的练习。 将存储库转储到一个文件,复制到新的服务器,加载它。 由于我们使用IP地址而不是URL,所以我们必须运行

 $ svn switch --relocate http://<old-ip>/repositories/path/to/my/project http://<new-ip>/repositories/path/to/my/project 

为每个工作副本。