如何从SVN仓库中恢复已删除的文件

5

我从Eclipse工作空间中删除了一个文件,但该文件仍在SVN仓库中。有没有人能帮助我在不使用命令行的情况下从SVN获取已删除的文件?


你在使用乌龟 SVN 吗? - Vinod VT
我刚刚尝试了一下。当我在文件夹上点击SVN HISTORY时,我看到了已删除的文件。我正在使用Eclipse中的Subversion插件。在版本控制下,如果我点击'D'行,它们会显示已删除的代码/文件。 - Raghunandan Krishnamurthy
这可能会对您有所帮助:https://dev59.com/i3RB5IYBdhLWcg3w26x3 - Vinod VT
@RaghunandanKrishnamurthy,我能够看到已删除的文件。但我的问题是如何将其恢复到我的工作区? - kavie
1
如果您只是从本地工作副本中删除了文件但尚未提交,请执行还原操作并撤消删除操作即可解决问题。 - Adrian Shum
显示剩余3条评论
3个回答

4

使用Eclipse+SVN恢复文件的最简单方法如下:

在SVN Repositories视图中,找到包含您的文件的文件夹,右键单击并选择“显示历史记录”。您将在历史记录视图中看到对此文件夹进行的提交列表。请确保已切换为远程修订版本。从提交列表中找到删除该文件的提交。在下面的窗格中,有一个与此提交相关的文件列表-您可以通过减号找到已删除的文件。双击将在编辑器中打开此文件...


1
如果你在Eclipse中删除了文件,Eclipse会告诉Subversion标记该文件以进行删除。这意味着下一次提交将删除该文件。您需要执行还原操作。
如果您通过Internet Explorer或其他文件浏览器删除了此文件,并且没有告诉Subversion,则该文件未被标记为删除。只需更新该文件即可将其恢复。
这就是命令行客户端的作用。使用命令行客户端,我可以告诉Subversion更新或还原不存在的文件。使用GUI,我首先必须选择该文件,然后告诉Subversion要做什么。但是没有文件,我什么也做不了。
最简单的解决方案:重新创建该文件。内容并不重要。它可以是空的,也可以包含肮脏的打油诗。基本上,您正在创建一个可以使用文件浏览器选择的文件。
然后,您可以选择该文件,并通过团队菜单告诉Subversion和/或Eclipse将其还原。这样,无论文件是如何被删除的,Subversion都会将文件恢复回其原始的签出版本。

0
沿着Bryn的解决方案,使用Subclipse,在SVN历史记录中找到要删除的文件的删除'D'条目,右键单击并执行“复制...”,然后会要求您指定Eclipse工作区中的位置。单击确定,这可能需要一些时间,就完成了。

enter image description here

我最初尝试了“导出...”,但对我没有作用,似乎subclipse正在查找HEAD,即使选择了旧版本。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接