GUIDE深度 · Deep dive

Git 撤销与恢复

Git 的撤销分三层:工作区、暂存区、提交历史。先判断改动在哪一层,再选 restore/reset/revert;已经推送的提交优先 revert,不要改写公共历史。

更新 2026-10-30 · 公式可核验

按层选命令

工作区:git restore file。

暂存区:git restore --staged file。

本地提交:git reset --soft/--mixed/--hard。

已推送:git revert。

找回误删

git reflog 找 HEAD 位置。

git reset --hard HEAD@{n} 回到那个位置。

常见问题

reset --hard 还能恢复吗?

未提交改动通常找不回;已提交的可用 reflog。先备份。

revert 和 reset 区别?

revert 生成反向提交,安全;reset 改写历史,适合本地。

数据来源

相关计算器

Git 命令游戏化学习:60 张卡片60 张 Git 命令/概念卡,覆盖提交、分支、撤销和恢复,按遗忘曲线复习。

更多指南

平假名和片假名有什么区别?阅读指南遗忘曲线怎么复习?阅读指南音读和训读怎么分?阅读指南N5 汉字学习顺序阅读指南