我可以在SVN中获取修订历史记录吗?

时间:2013-07-26 14:53:24

标签: svn tortoisesvn visualsvn

我使用ProjectLocker和TortoiseSVN以及VisualSVN。

昨晚在试图找出一个奇怪的问题时,我将一些文件还原回到生产中的最后一个日期。这恰好是大约3-4次修改。

当较旧的文件没有帮助解决问题时,我尝试进行更新以返回有关两个文件的最新版本。

我现在看到了(感谢"类似问题")我应该使用Update to Revision而不是Revert。

问题是,我可以以某种方式获得这些修订吗?

3 个答案:

答案 0 :(得分:1)

还原您的还原,文件将类似于2个修订版。

答案 1 :(得分:1)

您应该可以在还原之前恢复到修订版本。

SVN并不直接支持回滚("还原"因为龟叫它)。相反,它需要旧版本的副本并将其复制到新版本。

但是,这仍然会使你正在修改你的修订版。当您还原此时,您可能需要使用挂钩修订版(例如,对于修订版123,您将恢复为http://mysvndomain.com/repos/foo/bar@123

答案 2 :(得分:1)

“revert”这个词在Subversion中有特殊含义,而不是你在这里使用它。 Subversion revert意味着撤消工作副本中任何未提交的更改 - 在这种情况下不会触及存储库状态。

更新到修订版也不适用于此,因为您无法从该州提交。

您最初应该做的是所谓的reverse merge。您应用一个或多个更改的合并将存储库状态回滚到之前版本(您的上一个生产版本)中的状态,而不是仅复制文件然后将它们作为新修订提交。您仍然可以在当前情况下执行此操作 - 反向合并您刚刚提交的更改,并提交。这会让你回到“最近的”。您的修订历史看起来有点奇怪,但并未完全破坏。