如何将SVN 存储库的一部分迁移到新的存储库中?
要将完整SVN 存储库的内容迁移到新存储库,必须先转储旧存储库:
svnadmin dump /path/to/repository > repository-name.dmp
然后使用svnadmin load
.
但我不确定如何迁移一部分。我还需要倾倒整个东西吗?我是否为我想要的部分 grep?
只是 dump myproject
,我试过这个,但它没有用:
svnadmin dump /path/to/repository/myproject
有任何想法吗?
如果你想提取存储库的一部分,一个特定的子目录。您首先需要转储整个存储库,运行 svndumpfilter 以包含该目录,最后将内容加载到干净的存储库中。
假设您要移动目录 Calc,您将执行以下操作:
然后要正确加载 Calc 目录,您将执行以下操作:
这是从文档中获取并稍作修改的:http: //svnbook.red-bean.com/en/1.0/ch05s03.html
当我想这样做时,我只是做了 an
svnadmin dump
和 ansvnadmin load
,就像你做的一样,然后我从 repo 中删除了其他所有内容。repo 的大小只有 3gb,所以并不是什么大不了的事,而且为了安全起见,它并没有那么好,因为您显然可以通过回滚来撤消删除,但它实现了同样的事情,因为我找不到方法是保留修订历史。