Svn 如何将Subversion转储中的分支恢复(加载)到新服务器上的新存储库中?

Svn 如何将Subversion转储中的分支恢复(加载)到新服务器上的新存储库中?,svn,tortoisesvn,Svn,Tortoisesvn,考虑到谷歌搜索绝对没有点击率,我想我知道这个问题的答案(不,你不能那样做),但只是为了确定 我使用svn dump备份subversion存储库。现在,我想在另一台服务器上进行svn加载,并安装该备份的subversion。但问题是…我只想恢复一个特定的分支,而不是整个存储库 svn load或其他工具是否可以实现这一点 我已经发现这个问题 这实现了同样的目标(如果其他一切都失败了,我当然可以做到,但我正在努力节省一些时间)。有了这篇文章,你只需要倾倒你需要的东西,然后直接加载。我只想从完全转

考虑到谷歌搜索绝对没有点击率,我想我知道这个问题的答案(不,你不能那样做),但只是为了确定

我使用svn dump备份subversion存储库。现在,我想在另一台服务器上进行svn加载,并安装该备份的subversion。但问题是…我只想恢复一个特定的分支,而不是整个存储库

svn load或其他工具是否可以实现这一点

我已经发现这个问题

这实现了同样的目标(如果其他一切都失败了,我当然可以做到,但我正在努力节省一些时间)。有了这篇文章,你只需要倾倒你需要的东西,然后直接加载。我只想从完全转储中加载我需要的内容

编辑
谢谢你的反馈。但我还是不明白

  • 我的转储文件位于e:\svnBackups\repoBackup.svn
  • 我所有的新回购协议都在e:\Repositories
  • 我只想还原e:\svnBackups\repoBackup.svn的一个分支
  • 我要恢复的分支位于备份中的productionRepo/Projects/Branchs/MyColBranch
  • 我希望新的repo(在新服务器上)位于e:\Repositories\newRepo
使用这些信息,我应该键入什么命令行命令来实现它

赛斯

嗯。。。不会

svndumpfilter include BRANCH_PATH DUMP_FILE | svnadmin load REPOSITORY

这样做,还是我误读了问题?

svndumpfilter将允许您仅保留AKX指出的一个分支。事实上,你可以一次完成:

$ svnadmin dump $old_repos | svndumpfilter include $branch_path \
   | svnadmin load --force-uuid $new_repos
唯一的问题是分支将是一个分支,并且您将没有主干或标记。当然,您可以简单地将分支重命名为trunk


您可以使用
svnadmin load--parent dir
在加载期间将分支移动到主干。你得试一下。

是的……你看错问题了。我有一个完全转储,只想加载一个分支。SethUm,好的。但是如果您有一个完整的转储,
svndumpfilter
可以像上面那样用于过滤掉不涉及您想要的分支的修订。。。然后通过管道输送到
load
,这将为您提供一个只有一个分支的回购。但是,如果您需要像加载主干一样加载该分支,那么您还必须编写一些内容来重写过滤转储中的路径……好吧……让我研究一下svndumpfilter……也许这样就可以了?SethAKX…我已经编辑了我的问题…你觉得你可以看一下吗?看看你的编辑。您的意思是要将一个分支恢复为已包含其他分支、主干和标记的当前分支吗?