"糟糕"按钮: undo、revert、reset
正是这一部分,把 Git 从一桩苦差变成了一种超能力。当出了岔子时——它一定会——这样把它倒回去。
- 丢弃未保存的改动——你(或 AI)编辑了一些文件、把事情弄得更糟,但你还没提交。你可以把一切都退回到上一个好提交。
- 撤销一次提交(revert)——你保存了一次改动,然后发现它很糟。
git revert会做一个新的提交来抵消那个糟糕的提交,让你的历史保持诚实。 - 重置到更早的点(reset)——你想把项目倒回到好几次提交之前的样子。
# 撤销所有未提交的改动,回到你的上一次提交
git restore .
# 安全地撤销某一次糟糕的提交(会创建一个新的"撤销"提交)
git revert <commit-id>
# 倒回到更早的提交(很强大——使用前请让 AI 解释清楚)
git reset --hard <commit-id>
提醒一句: git reset --hard 会永久丢弃工作。它有时是正确的工具,但是要小心对待的那一个。拿不准时,在运行前问问 AI"这条命令对我的文件到底会做什么?"。