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

Git最后一次提交文件内容为空,如何恢复丢失的文件内容?

可尝试的恢复方法
  • 查看GitHub仓库的提交详情:本地git log只显示最后一次提交,但GitHub服务器可能留存了提交的快照。进入仓库的提交页面,点击最后一次提交的哈希值,检查提交内的文件是否真的为空。如果历史提交里曾有有效内容,可直接从该提交中提取文件内容。
  • 排查本地Git对象库:Git的文件内容都存在.git/objects目录的哈希对象中。先执行git fsck --full | grep blob列出所有二进制对象,再用git cat-file -p <blob哈希值>逐个查看,找包含有效代码的对象。
  • 检查修改Readme的那台电脑:如果该设备还能访问,查看其本地仓库的git reflog记录,或者未清理的stash内容,可能留存了原始代码的痕迹。毕竟那次pull操作前,该仓库应该有完整的代码版本。
  • 直接从每日备份恢复:你已经将每日文件历史存到其他磁盘,这是最稳妥的恢复方式,优先从备份中提取对应版本的文件内容。
  • 找回Git垃圾回收的对象:Git默认会保留过期对象14天,若之前执行过垃圾回收,可运行git fsck --lost-found,然后查看.git/lost-found/other目录下的文件,这些未被引用的对象可能包含丢失的代码。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 19:44:55