You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在VSCode中误删Git仓库所有变更,如何恢复丢失的文件?

Git文件恢复求助(Windows + VS Code环境)

问题经过

  • 初始化新Git仓库
  • 执行git add .但未将node_modules加入.gitignore
  • 向.gitignore添加node_modules条目后尝试提交,误关闭终端未处理提示窗口
  • 打开新终端执行git add .时,收到仓库存在活跃变更的提示
  • 误点击VS Code侧边栏Git区域的「丢弃变更」按钮,最终除node_modules外所有文件均丢失

已尝试操作

使用git reflog、git log查看Git历史未找到文件痕迹,git log输出如下:

$ git log --oneline --graph

* c65d0e7 (HEAD -> master) init

可能的恢复方法

1. 利用VS Code本地历史记录

VS Code自带文件快照功能,即使Git未提交也可能保留版本:

  • 打开VS Code,左侧活动栏点击「资源管理器」
  • 右键点击项目根目录空白处,选择「本地历史记录」→「显示历史记录」
  • 在弹出面板中浏览文件版本,找到目标文件后右键选择「恢复」

2. 检查Git暂存区残留对象

如果之前执行过git add .将文件加入暂存区,可尝试:

  • 终端执行:git fsck --lost-found
  • 进入项目目录下的.git/lost-found/other文件夹,里面的文件是Git未关联的对象
  • 用cat命令查看文件内容(如cat .git/lost-found/other/abc123),确认后复制并重命名为原文件

3. Windows系统级恢复

  • 回收站检查:直接打开回收站,查找是否有被删除的项目文件,右键恢复
  • 文件历史备份:搜索「文件历史设置」,若开启该功能,可从备份中恢复项目文件夹

4. VS Code自动保存快照

  • 按Ctrl+Shift+P调出命令面板,输入「Open User Settings」,搜索files.autoSave确认是否开启自动保存
  • 自动备份文件可能存放在:C:\Users\[你的用户名]\AppData\Roaming\Code\User\workspaceStorage,进入对应工作区文件夹,查找带原文件扩展名的备份文件

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 06:04:57