我们有一个公司SVN存储库,其中托管了许多项目,每个项目都有自己的分支/主干/标记。我的团队只对两个项目感兴趣。
所以我使用svnrdump
创建了两个转储文件。现在我正试图将它们加载到我本地的SVN中。但我想保留修订号。当我加载第一个项目时,修订号是正确的。但当我加载第二个项目时,修订号会在第一个项目结束的地方恢复。当我尝试使用svnrdump
和svnadmin
时也是如此。
有没有办法为两个选定的项目创建一个转储文件?
将svnadmin dump
与--include
或--pattern
参数一起使用,生成一个保存修订号的存储库转储流。
例如,命令应该如下所示:
svnadmin dump MYREPO --include /project1 --include /project2 --file myrepodumpfile.svndump
以下是svnadmin help dump
帮助的一部分:
--exclude ARG : filter out nodes with given prefix(es) from dump
--include ARG : filter out nodes without given prefix(es) from dump
--pattern : treat the path prefixes as file glob patterns.
Glob special characters are '*' '?' '[]' and ''.
Character '/' is not treated specially, so
pattern /*/foo matches paths /a/foo and /a/b/foo.
pattern /*/foo matches paths /a/foo and /a/b/foo.
顺便说一句,您可以通过添加-M 256
参数来提高svnadmin dump
的性能
-M [--memory-cache-size] ARG : size of the extra in-memory cache in MB used to
minimize redundant operations. Default: 16.
[used for FSFS repositories only]