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

未提交代码时误执行git rm -r后如何恢复文件?

恢复git rm -r删除的无提交记录文件

情况1:文件曾被git add过(未提交)

如果你的文件之前执行过git add(哪怕没做过git commit),可以通过git的对象数据库恢复:

  • 第一步:扫描git未引用的对象
    执行命令:
    git fsck --lost-found
    
    该命令会把所有未被追踪的git对象存入.git/lost-found/blobs目录。
  • 第二步:识别并恢复目标文件
    遍历目录中的哈希文件,用git show查看内容:
    git show <对象哈希值>
    
    确认是需要恢复的文件后,将内容导出到原文件名:
    git show <对象哈希值> > 原文件名
    

情况2:文件从未被git add过

如果文件从未被git追踪过,git无法帮你恢复,只能依赖系统级工具:

  • Windows:使用Recuva、Disk Drill等数据恢复软件
  • macOS:借助Disk Drill或已开启的Time Machine
  • Linux:尝试testdisk/photorec命令行工具,或检查桌面环境回收站

重要提示:磁盘写入新数据会降低恢复成功率,恢复前避免向磁盘写入任何内容。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 13:04:53