其他的不说了,需求如下:
原来的库有2个子库:
/rep1/trunk
/rep1/docs
/rep2/trunk
/rep2/docs
现在需要把rep1和rep2拆分为单独的库,那么新的库目录应该是:
/trunk
/docs
即没有rep1和rep2这2种目录了。
通过dump为全部转储后,用filter来过滤:
svndumpfilter include rep1 --drop-empty-revs --renumber-revs < all.dmp > rep1.dmp
然后,看清了,用notepad++打开这个rep1.dmp,搜索
Node-path: rep1 及: Node-copyfrom-path: rep1
上面搜索最好不要斜杠/,具体是:
Node-path: rep1/abc
以及:
Node-copyfrom-path: rep1/abc
并全部替换为空,空,不是空格。即变成这样:
Node-path: abc
Node-copyfrom-path: abc
还有把创建rep1的指令删掉,即删掉这一坨:
Node-path: rep1 Node-kind: dir Node-action: add Prop-content-length: 10 Content-length: 10 PROPS-END
保存rep1.dmp
最后用load加载到新库!
可以参考官方文档:
尝试如下步骤:
rem: 成功,版本号不连续 svndumpfilter include project-rep1 < myrep.dmp > project-rep1.dmp svnadmin load i:\SVNServer\rep1 < i:\svn_dump_data\project-rep1.dmp rem: 也成功,版本号连续起来 svndumpfilter include project-rep1 --drop-empty-revs --renumber-revs < myrep.dmp > project-rep1.dmp svnadmin load i:\SVNServer\rep1 < i:\svn_dump_data\project-rep1.dmp