即放棄對本地已修改但尚未提交的文件的修改,還原其到未修改前的狀態。
注意: 已 add/ commit 的文件不適用個方法,應該用本文提到的第二種方法。
命令如下:
git checkout . # 撤銷對所有已修改但未提交的文件的修改,但不包括新增的文件
git checkout [filename] # 撤銷對指定文件的修改,[filename]爲文件名
2. 使用 git reset 回退項目版本
可以回退到任意已經提交過的版本。已 add / commit 但未 push 的文件也適用。
命令如下:
git reset --hard [commit-hashcode]
# [commit-hashcode]是某個 commit 的哈希值,可以用 git log 查看因此一般用法是先用 git log 查看具體commit的哈希值,然後 reset 到那個版本。
說明:
這兩個命令都不會對新增文件起作用。因爲新增的文件是還未加到 git 的記錄裏面的,即屬於未被 tracked 的狀態,所以撤銷修改和回退均對其不影響。我們直接手動刪除文件就行了。