我使用ProjectLocker和TortoiseSVN以及VisualSVN。
昨晚在试图找出一个奇怪的问题时,我将一些文件还原回到生产中的最后一个日期。这恰好是大约3-4次修改。
当较旧的文件没有帮助解决问题时,我尝试进行更新以返回有关两个文件的最新版本。
我现在看到了(感谢"类似问题")我应该使用Update to Revision而不是Revert。
问题是,我可以以某种方式获得这些修订吗?
答案 0 :(得分:1)
还原您的还原,文件将类似于2个修订版。
答案 1 :(得分:1)
您应该可以在还原之前恢复到修订版本。
SVN并不直接支持回滚("还原"因为龟叫它)。相反,它需要旧版本的副本并将其复制到新版本。
但是,这仍然会使你正在修改你的修订版。当您还原此时,您可能需要使用挂钩修订版(例如,对于修订版123,您将恢复为http://mysvndomain.com/repos/foo/bar@123
。
答案 2 :(得分:1)
“revert”这个词在Subversion中有特殊含义,而不是你在这里使用它。 Subversion revert意味着撤消工作副本中任何未提交的更改 - 在这种情况下不会触及存储库状态。
更新到修订版也不适用于此,因为您无法从该州提交。
您最初应该做的是所谓的reverse merge。您应用一个或多个更改的合并将存储库状态回滚到之前版本(您的上一个生产版本)中的状态,而不是仅复制文件然后将它们作为新修订提交。您仍然可以在当前情况下执行此操作 - 反向合并您刚刚提交的更改,并提交。这会让你回到“最近的”。您的修订历史看起来有点奇怪,但并未完全破坏。