Git reflog恢复:误切分支后先找回提交再决定下一步
找不到刚才的提交时,可以查看本地引用变动记录。本文说明如何建立恢复分支并核对内容。

提交刚才还在,切换或重置后却看不到,不一定已经彻底丢失。Git reflog 记录本地引用移动历史,可用于查找先前的位置,但它不是永久备份。
先保护当前状态
运行状态检查,记录当前分支和尚未提交的文件。不要急着执行 hard reset 或清理操作,否则可能扩大丢失范围。reflog 主要记录引用变化,未曾提交的内容不一定能通过它恢复。
查找候选位置
查看 HEAD 或相关分支的 reflog,根据时间、操作描述和提交内容找到候选。不要只凭一条时间记录下结论;阅读差异和提交信息,确认它确实包含需要的修改。
创建恢复分支
在确认的提交位置建立一个新分支,切换后核对文件与测试结果。再决定通过合并或选择提交的方式带回当前开发分支,避免直接重写共享分支历史。若候选已被清理或从未提交,reflog 可能无法恢复。
验收时确认恢复分支可见、内容完整、原分支也没有被意外改动。重要代码仍应定期推送或备份;本地引用记录有保留期限,不能当作唯一恢复手段。
参考资料
资料核对日期:2026年10月28日。
本文新增价值
针对Git reflog恢复整理常见误区、操作顺序和验证方法,区分官方资料说明与面向实际问题的维护建议。
针对Git reflog恢复整理常见误区、操作顺序和验证方法,区分官方资料说明与面向实际问题的维护建议。