場景1:當你改亂了工做區某個文件的內容,想直接丟棄工做區的修改時,用命令git checkout -- file
。git
場景2:當你不但改亂了工做區某個文件的內容,還添加到了暫存區時,想丟棄修改,分兩步,第一步用命令git reset HEAD file
,就回到了場景1,第二步按場景1操做。ide
HEAD指向的版本就是當前版本,所以,Git容許咱們在版本的歷史之間穿梭,使用命令git reset --hard commit_id
。code
或者使用 git reset --hard HEAD^
回退上一個版本。it
穿梭前,用git log
能夠查看提交歷史,以便肯定要回退到哪一個版本。class
要重返將來,用git reflog
查看命令歷史,以便肯定要回到將來的哪一個版本。file