Git 本地的撤銷修改和刪除操作

由於最近考試,其實是自己懶一直也沒有把博客寫下去,今天就開始把以前的全部補回來 希望你在此能夠有此收穫,找到你想要找的問題


緊接上一篇博客,想要從基礎學習的請從上篇看起

一:撤銷操作

比如我現在在readme.txt文件裏面增加一行 內容爲555555555555,我們先通過命令查看如下:


這裏寫圖片描述

在我未提交之前,我發現添加5555555555555內容有誤,所以我得馬上恢復以前的版本,現在我可以有如下幾種方法可以做修改:


第一:如果我知道要刪掉那些內容的話,直接手動更改去掉那些需要的文件,然後add添加到暫存區,最後commit掉。


第二:我可以按以前的方法直接恢復到上一個版本。使用 git reset –hard HEAD^


但是現在我不想使用上面的2種方法,我想直接想使用撤銷命令該如何操作呢?首先在做撤銷之前,我們可以先用 git status 查看下當前的狀態。如下所示:

這裏寫圖片描述


可以發現,Git會告訴你,git checkout — file 可以丟棄工作區的修改,如下命令:


git checkout – readme.txt,如下所示:

這裏寫圖片描述


命令 git checkout –readme.txt 意思就是,把readme.txt文件在工作區做的修改全部撤銷,這裏有2種情況,如下:

  1. readme.txt自動修改後,還沒有放到暫存區,使用 撤銷修改就回到和版本庫一模一樣的狀態。

  2. 另外一種是readme.txt已經放入暫存區了,接着又作了修改,撤銷修改就回到添加暫存區後的狀態。

    其實也就是撤銷到最後一次沒有放入暫存區的狀態。


    對於第二種情況,我想我們繼續做demo來看下,假如現在我對readme.txt添加一行 內容爲6666666666666,我git add 增加到暫存區後,接着添加內容7777777,我想通過撤銷命令讓其回到暫存區後的狀態。如下所示:


    這裏寫圖片描述


    注意:命令git checkout — readme.txt 中的 — 很重要,如果沒有 — 的話,那麼命令變成創建分支了。


二:刪除文件。

假如我現在版本庫testgit目錄添加一個文件b.txt,然後提交。如下:


這裏寫圖片描述


如上:一般情況下,可以直接在文件目錄中把文件刪了,或者使用如上rm命令:rm b.txt ,如果我想徹底從版本庫中刪掉了此文件的話,可以再執行commit命令 提交掉,現在目錄是這樣的


這裏寫圖片描述


只要沒有commit之前,如果我想在版本庫中恢復此文件如何操作呢?


可以使用如下命令 git checkout — b.txt,如下所示:

這裏寫圖片描述


再來看看我們testgit目錄,添加了3個文件了。如下所示:

這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章