1. 工作区
文件只是在工作区进行了修改,还没有提交到暂存区(未进行 git add 操作)
此时可以使用 git checkout -- filename 撤销工作区文件的修改
效果相当于删除本地的文件,重新从远程仓库拉取该文件
2. 暂存区
文件在工作区进行了修改,并提交到了暂存区(进行了 git add 操作,未进行 commit 操作)
此时可以使用 git reset HEAD filename 撤销暂存区文件的修改
3. 版本库
文件在工作区进行了修改,并提交到了暂存区,并提交到了本地版本库(进行 commit 操作,未进行 git push 操作)
此时可以使用 git reset --hard commit_id 将版本回退到指定 commit_id 的版本