【发布时间】:2009-11-19 18:56:18
【问题描述】:
经过一些研究,我发现可以将文件从一个 repo 移到另一个单独的 repo 中,并且仍然保留相关的历史记录。该过程包括将整个 repo 转储到文件,为您想要的路径/文件过滤该转储文件(假设您不想移动所有内容),然后将所述转储文件加载到目标 repo 中。
我在前两个步骤中找到了成功,但在最后一步遇到了障碍——加载。
从 SVN 书中,有一个示例表明目标 repo 中任何不存在的路径都将在加载过程中创建:
svnadmin load --parent-dir new/subdir/for/project /var/svn/restored < repos-backup
<<< Started new txn, based on original revision 1
* adding path : test ... done.
* adding path : test/a ... done.
但是,当我自己运行命令时(当然使用不同的路径),我得到以下信息:
<<< Started new transaction, based on original revision 78
svnadmin: File not found: transaction '990-tj', path 'myFolder/trunk/templates/default/fireWood'
* adding path : myFolder/trunk/templates/default/fireWood ...
然后我立即被踢到一个提示 - 不清楚该过程是否成功。在检查存储库时,没有创建新目录,也没有加载文件。什么都没有。
有什么想法吗?
【问题讨论】:
-
我也遇到过这个问题,但是我解决不了。从一个 repo 到另一个 repo 是一个干净的转变,所以我最终只是清除了一个 repo 的所有内容并导入另一个 repo。但当然,我失去了所有的历史。
-
尝试在 Subversion 邮件列表中提问。
标签: svn version-control tortoisesvn