我正在尝试将目录(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....
任何线索?我在这做错了什么?
大卫
答案 0 :(得分:1)
请参阅Avi对回答问题的评论
答案 1 :(得分:0)
如果您不介意从第一个仓库中丢失历史记录,只需将以下命令应用于已签出的repo1树:
find <repo1> -name ".svn" | xargs rm -rf
这将从签出树中的所有目录中删除所有.svn文件,并避免第二个错误。
当然这假设你使用的是cygwin / unix。
干杯