我准备将SVN服务器从1.5.5升级到1.6.5 - 实际升级一切都很好,但我对升级实际存储库有点困惑。
我在几个地方(here,here)阅读过,最好转储和重新加载存储库,而不是使用svnadmin upgrade
。我假设我应该转储,升级服务器然后重新加载转储 - 但是,我应该在加载之前清除存储库中的旧文件吗?如果是这样,最好的方法是什么?
如果在我彻底搞砸我的版本控制系统之前,有人可以给我一步一步的快速,那将非常有帮助!
干杯, 标记
答案 0 :(得分:11)
Subversion常见问题解答中有一个quick step-by-step:
Subversion书中的
- 关闭svnserve,Apache以及可能正在访问存储库的任何其他内容。
svnadmin dump /path/to/repository > dumpfile.txt
,使用svnadmin的X版本。mv /path/to/repository /path/to/saved-old-repository
- 现在升级到Subversion Y(即构建并安装Y,替换X)。
svnadmin create /path/to/repository
,使用svnadmin的版本Y。svnadmin load /path/to/repository < dumpfile.txt
,再次使用svnadmin的版本Y。- 将挂钩脚本等从旧存储库复制到新存储库。
- 重启svnserve,Apache等
醇>
more details on dumping and loading。我假设你研究了subversion 1.6 release notes。
答案 1 :(得分:4)
不,您不需要转储/加载升级,1.6专门设计为仅使用svnadmin upgrade
轻松升级。我做到了,它奏效了,我很高兴。
release notes明确表示不需要转储/加载回购。
我会做一个备份(以防万一),然后进行推荐的升级。然后,我将打包repo文件(svadmin pack
)以使未来的备份更快,SVN的执行速度更快。
答案 2 :(得分:1)
如果您打算这样做,那么您可能想要转储,升级,删除和重新创建仓库,然后重新加载它。
我不能说我在使用升级时遇到过任何问题,尽管你可能最终会得到一个不太理想的回购结构。