当前位置:  开发笔记 > 运维 > 正文

将Subversion存储库移动到另一台服务器

如何解决《将Subversion存储库移动到另一台服务器》经验,为你挑选了4个好方法。

我有一个托管我的Subversion代码库的服务器.该服务器当前是Windows Server 2003,我的IT管理员希望将其更新到Windows Server 2008.

这意味着我将需要在服务器构建时移动我的Subversion存储库,并且想知道将存储库移动到新服务器的最佳实践是什么.

看来,在网上看,推荐的方法是使用:

svnadmin dump /path/to/repository > repository-name.dmp

然后使用:

svnadmin create repository-name
svnadmin load repository-name< repository-name.dmp

要导入存储库.

上述方法看起来是最好的方法吗?



1> petr k...:

是的,转储和加载存储库是一种方法.如果且仅当您确定在复制过程正在进以安全的方式).

您还需要重新签出所有工作副本,或使用仅重写URL 的svn switch命令.更方便的方法是使用TortoiseSVN的Relocate命令,这可以降低在重定位过程中出错的风险.



2> alexandrul..:

我的恢复脚本是这样的:

svnadmin create repository-name --fs-type fsfs
svnadmin load   repository-name --force-uuid < repository-name.dmp

第一行确保存储库使用FSFS后端(这是许多来源推荐的,包括这一个:FSFS如何更好,而AFAIK更新版本的Subversion使用它作为默认值).FSFS是Subversion文件系统实现的名称.

第二行保留存储库的UUID,以便更容易地进行转换(没有--force-uuid开关,工作副本重定位将失败).

一些链接:

Subversion管理员 - 移动存储库

将Subversion存储库移动到另一个服务器



3> Sander Rijke..:

您还可以使用svnsync来移动存储库; 这样您就可以传输所有数据,而无需关闭"旧"存储库.这也是我所知道的从托管环境获取数据的唯一方法,在托管环境中,您没有shell访问权限或访问转储存储库.



4> JRun..:

另一种选择:

使用svnrdump. http://www.crowbarsolutions.com/backing-up-restoring-a-remote-svn-repository/

"你需要一个名为svnrdump的工具.如Apache所述,"svnrdump复制了svnadmin dump和svnadmin load的功能,但是可以在远程存储库上运行,而不需要管理员(本地文件系统)访问源或目标存储库".

推荐阅读
低调pasta_730
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有