我想将文件夹从一个存储库移动到另一个存储库(当然,保留所有历史记录)。我跟着一些问题的答案的“How to move a single folder from one Subversion repository to another repository?”特别是,我尝试的命令:加载存储库的转储部分不会产生任何影响
svnadmin.exe dump H:\Repositories\RepSource > W:\temp\RepSource.dump
svndumpfilter.exe include "trunk\Sources\folderToMove" --drop-empty-revs --renumber-revs --preserve-revprops <W:\temp\RepSource.dump> W:\temp\RepSource_filtered.dump
svnadmin.exe load "H:\Repositories\RepDest" < W:\temp\RepSource_filtered.dump
RepDest的是,我只是为了测试创建了一个空库。倾销顺利进行;根据输出结果进行过滤,这表示所有文件夹都已丢弃,但是指定了一个。加载有一些问题;它具有输出:
<<< Started new transaction, based on original revision 1 * editing path : trunk/Sources/folderToMove/theFile.mxml ...svnadmin: File not found: transaction '0-1', path 'trunk/Sources/folderToMove/theFile.mxml'
“theFile.mxml”是,是“folderToMove”文件夹内的文件。
我注意到一些神奇:当过滤流,我添加了一个反斜杠结束包括路径:
svndumpfilter.exe include "trunk\Sources\folderToMove\" --drop-empty-revs --renumber-revs --preserve-revprops <W:\temp\RepSource.dump> W:\temp\ RepSource_filtered.dump
输出如下:
<<< Started new transaction, based on original revision 1 ------- Committed revision 1 >>> <<< Started new transaction, based on original revision 2 ------- Committed revision 2 >>> <<< Started new transaction, based on original revision 3 ------- Committed revision 3 >>> <<< Started new transaction, based on original revision 4 ------- Committed revision 4 >>> <<< Started new transaction, based on original revision 5 ------- Committed revision 5 >>> <<< Started new transaction, based on original revision 6 ------- Committed revision 6 >>> <<< Started new transaction, based on original revision 7 ------- Committed revision 7 >>> <<< Started new transaction, based on original revision 8 ------- Committed revision 8 >>> <<< Started new transaction, based on original revision 9 ------- Committed revision 9 >>> <<< Started new transaction, based on original revision 10 ------- Committed revision 10 >>> <<< Started new transaction, based on original revision 11 ------- Committed revision 11 >>> <<< Started new transaction, based on original revision 12 ------- Committed revision 12 >>> <<< Started new transaction, based on original revision 13 ------- Committed revision 13 >>> <<< Started new transaction, based on original revision 14 ------- Committed revision 14 >>> <<< Started new transaction, based on original revision 15 ------- Committed revision 15 >>>
似乎但是当我查看RepDest存储库(使用TortoiseSVN-> Repo Browser或VisualSVN服务器管理器)时,其中没有任何内容。它保持空着。 HEAD修订版本号是0。但是,如果我看着这个仓库有:
svnlook tree H:\Repositories\RepDest -r 5
我再次看空库,但它承认版本号。所有版本号从1到15都正确处理。对于测试,“-r 16”会导致svnlook向我表示此修订不存在。
我也检查了RepDest存储库文件夹的大小 - 加载之前和之后都是一样的。
这里有什么问题?有任何想法吗 ?
此外,我注意到以下几点: 只会出现此问题,如果“主干的\ Sources \ folderToMove”包含的文件和子文件夹。如果它只包含文件,导入将会成功。 我试图在包含选项中指定两个子文件夹和文件用空格分隔,但我得到相同的结果“文件未找到” – AntonAL 2009-12-27 12:30:04