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

执行rm -rf .git及强制推送命令后丢失提交,能否恢复重要项目内容?

恢复可行性及操作方案

你执行的rm -rf .git删除了本地所有Git提交记录,后续的强制推送已经用新的空初始提交覆盖了GitHub远程仓库master分支的历史,能否恢复取决于是否还存在未被覆盖的原有提交副本:

高成功率恢复路径(按优先级排序)

  • 查找其他设备/协作者本地的仓库克隆:只要克隆的时间早于你强制推送的时间,该副本内完整保留了原有提交记录和文件,直接使用即可。
  • 检查远程仓库的其他分支/标签:如果你之前创建过除master外的其他分支、或是打了版本标签,这些分支和标签对应的提交不会被本次强制推送覆盖,直接拉取对应分支内容即可恢复。
  • 从GitHub留存的记录找回:
    • 如果你能记得任意一条原有提交的哈希值,直接访问对应仓库的提交详情地址即可获取对应提交的完整内容。
    • 若仓库之前提交过Pull Request、发布过Release,这些场景关联的提交不会被强制推送删除,可以从对应页面找回提交内容。
    • 若有其他用户Fork过该仓库,Fork的副本会保留强推前的所有提交,可联系Fork者获取副本。
  • 本地磁盘数据恢复:如果你的本地磁盘在删除.git目录后没有进行大量写入操作,可以尝试用专业数据恢复工具扫描磁盘,尝试找回被删除的原.git目录文件,有一定概率恢复本地提交记录。

无效恢复路径

你找到的全为null值的备份无恢复价值,无法从中提取原有文件内容。

最坏情况

如果以上路径全部无法走通,原有提交内容基本没有恢复可能。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 01:24:02