红联Linux门户
Linux帮助

升级及迁移svn本地版本库

发布时间:2016-02-26 09:51:44来源:easwy.com作者:linux人

Subversion有一点很麻烦,每次版本升级时格式都会变,导致本地版本库不能用。这几天公司的版本库由1.6升级到了1.7,并且版本库的URL也发生了变化。以前遇到这种情况,一般都会删除本地版本库,然后再重新check out。不过因为版本库比较大,check out一次需要很长时间,于是在网上查了一下,找到一种简单的解决办法。


首先要解决svn版本升级的格式不兼容问题,如果用1.7版本的svn在1.6版生成的work copy上使用命令,会遇到如下错误:

$ svn info
svn: E155036: Please see the 'svn upgrade' command
svn: E155036: Working copy '/home/easwy/dev' is too old (format 10, created by Subversion 1.6)


此时可以使用svn upgrade命令,对本地版本库的格式升级:

$ svn upgrade
Upgraded '.'
Upgraded 'scripts'
Upgraded 'merge-info'
Upgraded 'merge-log'
......


因为服务器的地址也变化了,所以升级完本地版本库后,需要把版本库的地址迁移到新地址上去,可以使用以下命令:

$ svn switch --relocate http://server-url/svn/dev http://new-server-url/svn/repos/dev


此命令执行完后,再用svn info看一次,会发现本地版本库的地址已经切换到新的服务器地址了。
这种操作方式,比重新check out要方便太多了!


本文永久更新地址:http://www.linuxdiyf.com/linux/18402.html