1. 本地修改了一堆文件(並無使用git add到暫存區),想放棄修改。
單個文件/文件夾:git
$ git checkout -- filename
全部文件/文件夾:spa
$ git checkout .
2. 本地新增了一堆文件(並無git add到暫存區),想放棄修改。
單個文件/文件夾:code
$ rm filename / rm dir -rf
全部文件/文件夾:it
$ git clean -xdf
// 刪除新增的文件,若是文件已經已經git add到暫存區,並不會刪除!file
3. 本地修改/新增了一堆文件,已經git add到暫存區,想放棄修改。
單個文件/文件夾:di
$ git reset HEAD filename
全部文件/文件夾:文件
$ git reset HEAD .
4. 本地經過git add & git commit 以後,想要撤銷這次commitco
$ git reset commit_id
這個id是你想要回到的那個節點,能夠經過git log查看,能夠只選前6位
// 撤銷以後,你所作的已經commit的修改還在工做區!工作
$ git reset --hard commit_id
這個id是你想要回到的那個節點,能夠經過git log查看,能夠只選前6位
// 撤銷以後,你所作的已經commit的修改將會清除,仍在工做區/暫存區的代碼不會清除!commit