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

向已合并后删除的Git分支提交代码后丢失,如何找回对应提交内容?

代码恢复操作步骤

你的代码不需要重写,只要你本地确实执行过commit操作,提交的内容都会保存在Git本地数据库中,可以通过以下步骤找回:

  • 第一步:执行reflog命令查看本地所有Git操作记录
    git reflog
    
    命令输出会按时间倒序展示所有HEAD指针的变更记录,包括你在X分支的提交、切换分支的操作,找到你在X分支最后一次提交对应的7位哈希值(通常提交记录备注就是你当时写的commit信息,很容易识别)。
  • 第二步:恢复丢失的提交
    你可以直接基于找到的哈希值重建分支,所有之前提交的代码都会完整恢复:
    git checkout -b recovery_x 你找到的哈希值
    
    执行完成后你就能在新的recovery_x分支看到所有之前丢失的提交内容,也可以正常push到远程。

补充说明

Sourcetree看不到X分支提交是因为远程X分支被删除后,本地X分支的远程跟踪关系失效,Sourcetree默认展示的提交历史只包含当前可到达的分支链,而git reflog记录的是本地全量操作日志,不受分支删除的影响。
只要你没有手动执行git gc类的清理操作,半年内的提交记录都可以通过上述方式找回。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 11:15:07