首页/开发/Git 与协作速查/git reset --hard 硬重置
Git 基础与命令88 条

git reset --hard 硬重置

回退到指定提交并同步丢弃暂存与工作区改动;未提交的改动无法找回,只适合放弃明确的本地实验。

Git 与协作速查开发更新于 2026-10-12
影响范围HEAD + 暂存区 + 工作区
找回可能已提交内容可用 reflog;未提交改动无法恢复
场景丢弃本地实验、对齐远端状态

常用示例

常用示例
git reset --hard HEAD~1
git reset --hard origin/main
git stash list      # 先确认有没有忘了在栈里的现场
执行前先 git status 与 git stash list 双重确认;正在进行的实验建议先 commit 到临时分支再重置。

易错点

  • 已推送分支上硬重置后强推会改写他人可见历史,先确认分支归属
  • --hard 不清理未跟踪文件,需要清理时另用 git clean(并先 -n 演练)

数据来源与参考

  • Git 官方文档:git-reset(--hard)
  • Pro Git 2nd Edition · 7.7 重置揭密
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌