You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何在Eclipse Oxygen中通过Egit找回已提交删除的文件?

找回Eclipse Oxygen中已提交删除的文件(Egit)

别急,这种情况我处理过好多次,不管是单个文件还是批量删除,用Egit自带的功能或者Git命令行都能轻松找回来,给你两种实用的方法:

方法一:用Egit图形界面恢复单个文件

  1. 在Eclipse的Package Explorer里,找到被删文件所在的项目,右键点击它,选择 Team -> Show History
  2. 在弹出的历史记录窗口里,找到那个执行了删除操作的提交记录(可以通过提交信息或时间快速定位)
  3. 双击这条提交记录,打开提交详情界面,在下方的文件列表里找到被删除的文件(它的状态会标着Deleted
  4. 右键点击这个文件,选择 Restore from Commit,确认之后文件就会回到你的工作区和暂存区了

如果要恢复整个目录或多个文件,也可以在历史记录里选中对应的提交,右键选择 Compare with Working Tree,然后在对比界面里把需要的文件直接拖回工作区即可。

方法二:用Git命令行恢复(适合批量操作或熟悉命令的用户)

如果你习惯用命令行,也可以打开Eclipse的Terminal(或者系统自带终端,进入项目根目录),执行以下步骤:

  1. 先找到包含删除操作的提交ID:
    git log --oneline --diff-filter=D
    
    这条命令会列出所有带删除操作的提交,找到对应那条的短ID(比如abc123
  2. 恢复单个文件:
    git checkout <提交ID>^ -- <文件路径>
    
    举个例子:git checkout abc123^ -- src/com/example/MyClass.java,这里的^表示取该提交的上一个版本,也就是文件还存在的版本
  3. 恢复该提交中所有被删除的文件:
    git revert <提交ID>
    
    这个命令会生成一个新提交,将之前删除的文件全部恢复回来

恢复完成后记得检查文件内容是否正确,之后正常提交到仓库就可以了。

内容的提问来源于stack exchange,提问作者Jonathan

火山引擎 最新活动