首页 最新文章团队项目管理正文

SVN服务器迁移实战

  作为代码管理主流工具,svn的优劣自有程序猿界的各位大拿评说,在此不再赘述。

  由于公司使用移动网络的缘故,时不时的出现svn代码管理平台无法上传和更新文件的问题,这对于程序猿来说就好像战场上的战士武器被缴一样致命,如果不是程序猿天生的隐忍和同理心,恐怕会引起异常暴动也未可知,所以移动网络处理不给力,迁移svn平台至内网成为唯一方案,已刻不容缓。

  任何一种迁移方案都必须满足几个条件才算迁移成功:1、各历史版本信息要迁移 2、源文件迁移 3、用户要迁移 4、权限要迁移

  一开始我想的挺简单,建一个svn服务,把源包的文件拷贝过来就行了,在实施的过程中发现不满足以上的条件1,但是用户和权限的迁移倒可以采用这个方案。后来才用svn自带的dump工具将源备份,包括历史版本一并打包,在打包的过程中才知道2年来我们更新了将近30000个版本,产生了将近18G的源文件,打包命令:svnadmin dump E:RepositoriesWJ-SVN > E:RepositoriesWJ-SVNWJ-SVN.dump,如果在执行的过程中发现提示此命令无效非内部命令,说明该命令未列入环境变量,需要进入到SVN的安装路径下进行操作就可以了。

  打完包后近18G的文件如何迁移倒成了问题,直接复制拷贝文件太大基本不可能,拷到U盘再拷出来时间太长,不是最优方案,于是将源文件压缩到10G左右先临时上传到我们的一台云服务器上,然后再下载下来,当然此过程用时大概也有7个小时。

  接下来就是解压导入了,命令Svnadmin load E:RepositoriesWJ-SVN < E:RepositoriesWJ-SVNWJ-SVN.dump。

  特别的,目标文件夹的创建最好也是用SVN命令:svnadmin create E:RepositoriesWJ-SVN,这样确保创建遗漏。

  

新svn服务器的地址https://kxbdatdbpc:8443/svn/,版本、用户&权限及源码虽然迁移了过来,但各程序猿的客户端地址仍然是老地址,需要做一个地址重定向操作才可以把原来checkout的文件checkin或者做对比合并操作。如下是SVN地址重定向过程:

  本机运行cmd→进入到本地SVN原文件存放路径→执行命令svn switch --relocate 源svn路径 目标SVN路径  

  然后进行如下测试工作:用户是否全部迁移成功?权限是否有遗漏?源代码历史版本是否有缺失?原来签出的文件是否能够正常签入?是否可以正常签出?是否可以放置新文件至新SVN服务器?

  以上内容确认完毕,至此SVN服务器的迁移工作才算完成!

©️公众号:思考者文刀

评论

百度搜索

站点信息

  • 文章总数:436
  • 页面总数:9
  • 分类总数:30
  • 标签总数:924
  • 评论总数:501
  • 浏览总数:1783899
觉得有用就打赏吧
关注本站公众号,享受更多服务!
联系方式
合作微信:itker0110
新媒体:Excel加油站(抖音/小红书/哔哩/头条)
公众号:左手Excel右手VBA
知乎:Excel其实很简单
Copyright2015-2024.Powered by ©️云水客 | 网站地图 | 辽ICP备14000512号-5
您是本站第4392名访客 今日有0篇新文章