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 的版本