Svn 如何从一个非常大的回购中获得项目的支持

Svn 如何从一个非常大的回购中获得项目的支持,svn,svnadmin,svndump,Svn,Svnadmin,Svndump,我们有一个带有项目特定分支和标记的存储库。这里只是我的回购的快照: 项目代码 ====>>分支机构 --R1 --R2 --R3 --R1_标签 --R2_标签 项目数据库 =======>>分支机构 --R1 --R2 --R3 --R1_标签 --R2_标签 现在我只想在项目代码中转储一个分支,然后将这个转储加载到同一服务器上的其他repo。 我尝试了以下操作,但结果是在其他回购中加载了空修订 svnadmin dump /path/to/repo | svndumpfilter inclu

我们有一个带有项目特定分支和标记的存储库。这里只是我的回购的快照:

项目代码 ====>>分支机构 --R1 --R2 --R3

--R1_标签 --R2_标签

项目数据库 =======>>分支机构 --R1 --R2 --R3

--R1_标签 --R2_标签

现在我只想在项目代码中转储一个分支,然后将这个转储加载到同一服务器上的其他repo。 我尝试了以下操作,但结果是在其他回购中加载了空修订

svnadmin dump /path/to/repo | svndumpfilter include /proj > dump-file
svnadmin create /new/proj/repo
svnadmin load --ignore-uuid /new/proj/repo < dump-file
我无法按顺序运行上述命令,因为Repo太大,创建转储可能至少需要10个小时。此外,忽略UUID是为了删除与当前存储库的链接,还是出于其他原因? 请提供特定命令的帮助。

svndumpfilter有一个选项可以删除空修订,-删除空修订

如果您没有使用-ignore-uuid的具体原因,那么尝试不使用它。如果它有效,你就不需要它了

您可以在不使用中间转储文件的情况下简化转储-筛选-加载操作,如下所示:

svnadmin create /new/proj/repo
svnadmin dump /path/to/repo | svndumpfilter include /proj --drop-empty-revs | svnadmin load /new/proj/repo

我确实试过了,但是svnadmin dump/path/to/repo从rev1开始,但我所需的项目在rev50000之后。所以这是正常的还是我在这里做错了什么。我也试过了-drop-empty revs,但加载时修订集仍然为空,没有对修订执行任何操作。我测试了这一点,它正确地排除了空修订。还有另一个标志-放下所有空转数,但我不确定区别。我不能在晚上之前再次测试,同时你可以试一试。
svnadmin dump /path/to/repo | svndumpfilter include /proj > dump-file
svnadmin create /new/proj/repo
svnadmin load --ignore-uuid /new/proj/repo < dump-file
svnadmin create /new/proj/repo
svnadmin dump /path/to/repo | svndumpfilter include /proj --drop-empty-revs | svnadmin load /new/proj/repo