恢复已删除目录的SVN历史记录

时间:2012-03-04 14:41:41

标签: svn history restore

情况,以及它的历史:

R1。)/ project / path包含很多文件和目录,包含日志

R2。)/ project / path一年前删除了。

R3。)通过add替换为/ project / path的本地副本。 (40%的文件没有变化,否则被删除)

R4。)之后的一年,/ project / path有很多变化,包含日志


现在我们要恢复/ project / path中这些文件的R1 +R4日志记录。

有可能这样做吗?不幸的是,我还没有找到办法做到这一点。


更新:

最终结果应该是R4文件集,但是使用R1 + R4日志。 目前,我们需要检查R1,R4中的日志。

2 个答案:

答案 0 :(得分:0)

首先,为了简化您的喜好,您可以使用-r(修订版)将R2路径的副本复制到某个新位置:/ project / old_path。现在,您可以像任何其他分支一样处理该路径。

然后使用svn merge与R4合并,或者通过查看两个版本的每个文件并添加/ diff / merge所需的内容来手动合并。

从svn的角度来看,来自R4的old_path目录和path与其他任何两条路径的相关性都不大。 svn无法知道应该使用两个修订版的哪些部分。

你也可以使用-r directy和svn merge:(http://svnbook.red-bean.com/en/1.7/svn-book.html#svn.ref.svn.c.merge

如果你更详细地解释一下你想要什么样的合并效果,你可能会得到更好的答案。

答案 1 :(得分:0)

svn help co
checkout (co): Check out a working copy from a repository.
usage: checkout URL[@REV]... [PATH]

注意URL中的@REV - 因为SVN是VCS(版本控制系统),它有关于任何和所有旧版本的数据。

如果R4是当前状态,您可以在任何新旧位置旧版本(R2-1)结帐,旧版内容仍然存在