一. 在工作区修改后, 尚未提交到暂存区
办法1(不推荐):
如果只是改了一个单词或者知道改了啥, 手动改回来…
办法2
:
使用git checkout -- <file>
场景1. 修改了好几个文件, 只想撤销修改某一个文件, 使用git checkout -- 文件名
场景2. 不管修改了几个文件, 反正我要全部撤销修改, 使用git checkout -- *
二. 在工作区修改后, 提交到了暂存区, 但是还没有commit到本地仓库
方法1.
步骤1. 将提交到暂存区的文件放回到工作区
使用git reset HEAD <file>
步骤2. 将工作区修改的文件还原
使用git checkout -- <file>
三. 修改后的文件已经commit到本地仓库, 还没有推送到远程仓库
使用本地版本回退命令
git reset --hard HEAD^
: 回到上一个版本
git reset --hard <commit_id>
: 回到指定版本, commit_id 可以用git log
命令查看