首页 文章

如何将我的本地Tortoise SVN存储库移动到新的Linux SVN服务器?

提问于
浏览
6

我一直在桌面PC上使用Tortoise SVN(和VisualSVN)和本地存储库几个月 . 我们刚刚 Build 了一个Linux SVN服务器,我想将我的存储库移动到这个服务器,保留我的所有历史记录 . 一旦移动,我将停止使用本地存储库 .

Tortoise文档建议使用“Relocate ...”命令,但这会抱怨UUID不匹配 . 我找到了一些关于如何编辑UUID文件以使其与服务器匹配的建议,但Tortoise忽略了新值,即使重启后也是如此 .

此外,我目前没有Linux服务器的命令行访问权限,但如果必须,可能会获得它 .

最好的方法是什么?

4 回答

  • 2

    你需要 svnadmin dump 你的本地存储库,把那个转储文件放到Linux机器上,然后在那里 svnadmin load .

    完成上述操作后, Relocate 将用于您的工作副本 .

    Here's the documentation.

  • 9

    您最好的选择是阅读红 beans 书中Migrating a repository的部分

  • 2

    如果您使用FSFS-repository后端(这是svn 1.3以来的标准),您只需将整个存储库目录(例如,通过SCP)文件复制到LINUX服务器 . 然后重定位应该没有问题,因为它实际上是相同的存储库 .

    FSFS repo格式与平台兼容(请检查linux svn版本是否与visualSVN版本相同或更高)

    我经常这样做,它确实有效(当然,在复制回购之前停止提交要好得多)

  • 1

    我刚试过以下内容(作为对绝望的回应):

    存储库是使用TortoiseSVN创建的,另一方面没有运行SVN(只有共享资源) . 所以,我安装了新的SVN服务器并使用它的二进制文件来运行

    C:\csvn> svnrdump dump file://server_ip/shared_resource/project > projectDump.svndump
    

    其中server_ip是创建存储库的服务器的ip . 它奏效了!只需要共享文件夹的权限(在我的情况下,我在Active Directory中有一个用户登录旧的存储库服务器和新的存储库服务器) .

    只是猜测这个信息可以帮助像我这样的人正在大量迁移糟糕的设置 .

相关问题