SVN将单个目录移动到其他存储库(带历史记录)

And*_*Dog 37 svn tortoisesvn repository svnadmin subdirectory

相关问题:将存储库中继移动到另一个分支(具有历史记录)


我知道可以转储包含历史记录的完整 SVN存储库,并使用以下命令将其加载到目标存储库的用户定义(子)目录中:

// in source repo
> svnadmin dump . > mydumpfilename

// in destination repo (backslashes because I'm using Windows)
> svnadmin load . < mydumpfilename --parent-dir some\sub\directory
Run Code Online (Sandbox Code Playgroud)

但这会将完整存储库导入目标存储库的子目录.我想要的是在源存储库中定义应该导出的子目录.有点像svnadmin dump . --source-path old\sub\dir > mydumpfilename.

我怎样才能做到这一点?如果TortoiseSVN可以这样做,请说出来;)


解决方案:感谢Tim Henigan的回答,这是正确的方法:

// execute in destination repo
svndumpfilter include source\sub\dir < mydumpfilename | svnadmin load . --parent-dir destination\sub\dir
Run Code Online (Sandbox Code Playgroud)

希望这也能帮助别人......

Tim*_*gan 20

退房svndumpfilter和本节有关存储库维护.

一旦有了整个旧存储库的转储文件,就可以使用svndumpfilter只提取所需的部分.

我不知道用TortoiseSVN做这件事的方法.