命令git checkout -- readme.txt
意思就是,把readme.txt
檔案在工作區的修改全部撤銷,這裡有兩種情況:
一種是readme.txt
自修改後還沒有被放到暫存區,現在,撤銷修改就回到和版本庫一模一樣的狀態;
一種是readme.txt
已經新增到暫存區後,又作了修改,現在,撤銷修改就回到新增到暫存區後的狀態。
總之,就是讓這個檔案回到最近一次git commit
或git add
時的狀態。
git checkout -- file
命令中的--
很重要,沒有--
,就變成了「切換到另乙個分支」的命令
用命令git reset head file
可以把暫存區的修改撤銷掉(unstage),重新放回工作區
git reset
命令既可以回退版本,也可以把暫存區的修改回退到工作區。當我們用head
時,表示最新的版本。
小結時間。
場景1:當你改亂了工作區某個檔案的內容,想直接丟棄工作區的修改時,用命令git checkout -- file
。
場景2:當你不但改亂了工作區某個檔案的內容,還新增到了暫存區時,想丟棄修改,分兩步,第一步用命令git reset head file
,就回到了場景1,第二步按場景1操作。
場景3:已經提交了不合適的修改到版本庫時,想要撤銷本次提交,參考版本回退一節,不過前提是沒有推送到遠端庫。
Git 撤銷更改
一 未使用 git add 快取 時 可以使用 git checkout filepathname 比如 git checkout readme.md 不要忘記中間的 不寫就成了檢出分支了!放棄所有的檔案修改可以使用 git checkout 命令。此命令用來放棄掉所有還沒有加入到快取區 就是 gi...
git 撤銷更改的檔案
在沒有git add之前 1.撤銷所有更改 git checkout 2.撤銷指定檔案的更改 git checkout file.txt git add之後 git reset head file.txt git push 之後 git reset hard comitthash git log o...
Git 的4個階段的撤銷更改
雖然git誕生距今已有12年之久,網上各種關於git的介紹文章數不勝數,但是依然有很多人 包括我自己在內 對於它的功能不能完全掌握。以下的介紹只是基於我個人對於git的理解,並且可能生編硬造了一些不完全符合git說法的詞語。目的只是為了讓git通俗化,使初學者也能大概了解如何快速上手git。同時,下...