将目录从一个SVN存储库移动到另一个存储库的问题

时间:2010-08-12 15:50:04

标签: svn

我正在尝试将目录(trunk / project / subproject)从存储库rep_a移动到新创建的存储库rep_b

按照我在ttp://stackoverflow.com/questions/417726/...中看到的说明,

我这样做了:

svnadmin dump my_repositories/rep_a > ./rep_a.dump
svndumpfilter include trunk/project/subproject --drop-empty-revs --renumber-revs --preserve-revprops < ./rep_a.dump > ./rep_a_filtered.dump
svnadmin load my_repositories/rep_b < ./rep_a_filtered.dump

但是,最后一个命令失败并显示以下消息:

<<<< Started new transaction, based on original revision 1
      * adding path : trunk/project/subproject ...svnadmin: File not found: transaction
      '3-a', path 'trunk/project/subproject'

该错误信息对我来说相当危险。知道这意味着什么吗?

我想也许这意味着它正在寻找rep_b中的trunk / project / subproject 所以我尝试手动添加它们(即通过添加/提交),然后再次尝试相同的命令。这也不起作用,并给我这个:

File already exists: filesystem 'rep_b\db', transaction....

任何线索?我在这做错了什么?

大卫

2 个答案:

答案 0 :(得分:1)

请参阅Avi对回答问题的评论

答案 1 :(得分:0)

如果您不介意从第一个仓库中丢失历史记录,只需将以下命令应用于已签出的repo1树:

find <repo1> -name ".svn" | xargs rm -rf

这将从签出树中的所有目录中删除所有.svn文件,并避免第二个错误。

当然这假设你使用的是cygwin / unix。

干杯