svn更换repos时保留svn log

两种情况

1. 直接移动库

问题:svn如何把A服务器上的reposA上传到B服务器的reposB并保留各种上传更新记录?
这个问题要感想敢干,直接复制改名即可

#登录到B服务器
scp -r cmo@A:/path/to/reposA  /path/to/svndata/
mv /path/to/svndata/reposA /path/to/svndata/reposB

问题解决

2. 移动库中的子目录

问题:svn如何把子目录的内容迁移到其他子目录并且保留各种上传更新记录?
比如需要将:svn://xx.xx.xx.xx/reposA/dirB/code
移动到:svn://xx.xx.xx.xx/reposB/dirAA/dirB/code

$ cd /path/to/svndata
$ ls
$ reposA  reposB

将reposA导出到一个文件中

$ svnadmin dump reposA/ > f1

将reposA中的code过滤出来,svndumpfilter include表示只保留制定的目录和文件

$ svndumpfilter include dirB/code < f1 > f2

将dumpfile2导入相应的目录,也就是reposB/dirAA/,用parent-dir来指定

$ svnadmin load reposB --parent-dir dirAA < f2

当然这只是导入上传更新记录,需要在这之前自己将代码上传到目标目录。
完整的过程不详述了,参见原文链接:https://blog.csdn.net/tianshijianbing1989/article/details/41980675/

参考文档:

svn版本管理文档:https://www.kancloud.cn/i281151/svn/197097

原文地址:https://www.cnblogs.com/bugutian/p/11512134.html