我想查看(而不是修改)我的存储库中几个文件的旧版本,所以我去了并恢复了这些文件。现在我试图将这些文件恢复到最新版本,以便它们与我的工作副本中的所有其他文件相匹配,但是当我更新文件夹时,没有任何更改。TortoiseSVN - 撤销还原
是否可以撤消恢复?我将这些文件的最新版本复制并粘贴到其他地方,因此它们并没有完全丢失,但我认为有一种比将这些文件移回到保存我的工作副本的目录更简单的方法。
在此先感谢。
我想查看(而不是修改)我的存储库中几个文件的旧版本,所以我去了并恢复了这些文件。现在我试图将这些文件恢复到最新版本,以便它们与我的工作副本中的所有其他文件相匹配,但是当我更新文件夹时,没有任何更改。TortoiseSVN - 撤销还原
是否可以撤消恢复?我将这些文件的最新版本复制并粘贴到其他地方,因此它们并没有完全丢失,但我认为有一种比将这些文件移回到保存我的工作副本的目录更简单的方法。
在此先感谢。
我猜你使用了恢复到这个版本上下文菜单中的显示日志对话。尽管有这个名字,但它并没有真正执行回复操作,至少在Subversion理解这个术语的方式上并非如此。它实际上做的是将修订更改反向合并到您的工作副本中。所以现在你的工作副本中有未保存的更改,Subversion在更新时会尝试保留它们。您可以从“检查修改”对话框中验证:这些项目应显示为“已修改”。
如果是这种情况,您可以通过以下方式丢弃本地更改:工作副本中的“还原”上下文菜单。这一次,它会做一个真正的“恢复”操作。
下次要检查目录树的旧版本时,可以使用日志对话框中的“更新项目到修订”上下文菜单。它会做SVN更新,可以很容易地撤消。
否。还原丢弃您的本地更改,该存储库从来没有听说过,所以无法从那里恢复它们。 TortoiseSVN可能会在客户端为你保留备份,但不会。
请注意,这只意味着您永远不会返回未提交的本地修改,Update命令仍应该从存储库获取最新版本,而不是您之前明确检出的任何旧版本。
谢谢为了您的回应。当我恢复这些文件时,我实际上没有进行任何本地更改。假设我的文件夹版本为100(这是版本库中的最新版本),并且我将一些文件恢复为版本50.因此,现在我要将我的工作副本中的这些文件恢复到版本100(除非我误解这些文件的版本100仍然位于存储库中)。在这个过程中我没有做任何事情。有没有办法回到这些文件的版本100,因为我早先将它们恢复到版本50? – Emily
好吧,在SVN术语中,您没有“回复”,您使用TortoiseSVN - > Update to revision ...对话框“更新”(是的,与日常使用不完全相同)到特定修订版本号。 – themel
是的,我没有意识到SVN术语和TortoiseSVN术语有点不同。我为每个文件做的事情是TortoiseSVN - > Show Log - >恢复到这个版本,正如Alvaro G. Vicario在另一个答案中所述。感谢您的帮助! – Emily
按Ctrl + Z在项目目录中,如果你没有重新启动您的计算机
这个帮了我。该项目是在Visual Studio中打开的,所以我可以选择性地撤消恢复! –
从来不知道这是可能的。为我节省了很多时间。谢谢! –
要撤消还原:
1.右键单击 - >TortoiseSVN的 - >恢复
2.右键单击 - >SVN更新
见详细的解答和程序在这里:http://stackoverflow.com/questions/1554278/temporarily-put-away-uncommited-changes-in-subversion-a-la-git-stash –