博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SVN版本库的迁移
阅读量:7095 次
发布时间:2019-06-28

本文共 990 字,大约阅读时间需要 3 分钟。

hot3.png

导出旧版本库

svnadmin dump REPOS_PATH [-r LOWER[:UPPER]] [--incremental]

svnadmindump命令用于导出整个Repository或Repository下的某个范围的修订版本。REPOS_PATH是版本库的路径,[-rLOWER[:UPPER]]用于指定导出的修订版本范围,由参数-r和两个用:号隔开阿拉伯数字组成。例如:-r0:50表示导出才版本0到版本50之间的所有修订版,-r是revision的缩写。

而另一个关键参数是--incremental。它使用增量方式来导出版本,即每次都只导出自上一个版本以来的修改。这样的好处是:

  1. 可以把一个大的文件切分成若干个小的文件。
  2. 在版本库已经存在的情况下,我们只需要每次导出修改的部分,不需要每次都导出整个版本库的内容。甚至可以通过hook脚本每天晚上自动将当天的修改dump出来做备份用。

导入新版本库

svnadmin load REPOS_PATH

svnadmin load命令用于从标准输入流/其它流中导入版本库,REPOS_PATH是要导入的目标版本库。默认情况下dump和load命令分别输出到默认输出设备(屏幕)和从默认输入设备(键盘)导入。但我们也可以把输出流/输入流重定向。

切换版本分支

svn switch URL [PATH]svn switch --relocate FROM TO [PATH]

switch命令用于更新工作副本的URL,指向新的版本库位置。首先要注意的一点是我们即可以将整个工作副本指向新的URL,也可将工作副本下的某个目录指向新的URL。

另外一个重要的参数就是--relocate。这个参数是否使用对于结果如何有很大影响,使用不当甚至可能会造成版本库不可用。其中有两条重要的规则:

  • 假如工作副本只是映射到同一个版本库内的不同位置,使用svn switch即可
  • 假如工作副本已是映射到不同的版本库,那么必须使用svn switch --relocate

上面第二条规则通常发生在我们需要将整个版本库迁移到另外一台机,或者同一台机的不同版本库时。这个时候使用--relocate会刷新原有工作副本中每个文件的URL头部。

转载于:https://my.oschina.net/shelllife/blog/1528176

你可能感兴趣的文章
Linux设置用户登录提示
查看>>
js metro仿win8卡片效果
查看>>
Samba服务器的配置 , nfs配置解析
查看>>
我的友情链接
查看>>
document.body属性
查看>>
c++ 广义表
查看>>
esxi中虚拟机中GTX1070
查看>>
docker
查看>>
vc char * 转换为 LPCTSTR的方法
查看>>
Spring(一)——总体介绍
查看>>
select count(*)和select count(1)的区别
查看>>
Spring AOP实现对redis统一管理 (注解方式)
查看>>
在XenServer 6.0中设置自动启动虚拟机
查看>>
文件管理命令及变量基础
查看>>
MyBatis--01.基础
查看>>
【Java多线程】的学习总结
查看>>
中文自动摘要的基本实现方法
查看>>
linux memcached集群
查看>>
OpenSSL&搭建私人CA
查看>>
MySQL explain
查看>>