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

如何撤销git reset --hard HEAD~1操作以恢复未推送的本地git代码?

Git reset --hard 操作恢复指南

前置说明

Git 会在本地留存所有提交的快照数据,只要你执行重置操作后没有手动运行 git gc 清理冗余对象,就可以恢复被删除的提交内容。

具体恢复步骤

  • 第一步:查询被丢弃的提交哈希
    执行 git reflog 命令查看本地HEAD指针的变更历史,输出结果会包含你刚才的重置操作记录,示例如下:

7a524b86f (HEAD -> 你的分支名) HEAD@{0}: reset: moving to HEAD~1
892dc41f HEAD@{1}: commit: 你最近一次被撤销的提交对应的注释内容
上述记录里,reset 操作上方的那条提交记录(示例中的892dc41f)就是你要恢复的目标提交哈希。

  • 第二步:执行恢复命令
    拿到目标提交哈希后,执行以下命令即可恢复到重置前的状态:
git reset --hard <你查询到的目标提交哈希>

执行完成后,你之前被删除的项目文件就会全部恢复。

后续操作建议

如果之后仅需要撤销最近一次提交、但不希望删除工作区修改,不要使用 --hard 参数,改用 git reset --soft HEAD~1 即可,该命令只会移动分支指针,不会改动工作区和暂存区的内容。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 17:15:00