Subversion - 将文件夹移动到另一个已经存在的存储库

Posted

技术标签:

【中文标题】Subversion - 将文件夹移动到另一个已经存在的存储库【英文标题】:Subversion - Move folder to another already existing repository 【发布时间】:2011-01-24 15:22:53 【问题描述】:

我有以下SVN结构:

现有存储库1

... 我的文件夹 文件夹移动 ...

ExistingRepository2

... 另一个文件夹 FolderToMove ...

所以我已经阅读了这个问题:How do I move a single folder from one Subversion repository to another repository? 但就我而言, ExistingRepository2 已经存在。 那么我该怎么做呢?我想在新项目中进行所有修订。

例如,我在ExistingRepository1 -> MyFolder -> FolderToMove 中有修订号1000,但在ExistingRepository1 中已经有修订号为1000。那么,svn load 会做什么?它会自动移动修订号吗?

这些将是命令:

svnadmin dump /svn/ExistingRepository1 > ./repository.dump
svndumpfilter include MyFolder/FolderToMove --drop-empty-revs --renumber-revs --preserve-revprops < ./repository.dump > ./folderToMove_only.dump
svnadmin load /svn/ExistingRepository2 < ./folderToMove_only.dump

提前感谢您的帮助,最好的问候,蒂姆。

【问题讨论】:

【参考方案1】:

Here 声称已经在现有存储库中移动了一个目录(一些博客 cmets 表明成功)。显然它在目标存储库中创建了整个路径,但我想一旦目录位于目标存储库中,您就可以轻松地将其移动到您想要的位置(同时保持其历史记录)。

[编辑]

我成功测试了这个。以下是我使用的命令:

svnadmin dump /path/to/source/repo | svndumpfilter --drop-empty-revs --renumber-revs include /folder/to/transfer/ > dumpfile
svnadmin load /path/to/destination/repo < dumpfile

然后我移动了传输的文件(使用 TortoiseSVN 的 Repo 浏览器)。

【讨论】:

以上是关于Subversion - 将文件夹移动到另一个已经存在的存储库的主要内容,如果未能解决你的问题,请参考以下文章

批处理文件将文件移动到另一个目录

将整个文件夹及其所有内容移动到另一个文件夹[重复]

我可以将 Windows SDK 文件夹移动到另一个卷吗?

将分支移动到另一个分支

将分支移动到另一个分支

linux怎么将一个文件移动到另一个目录下