Git 版本管理之回到過去

準備

首先在我 git 管理的項目下建立一個 test.txt 作爲測試文件。第一次 commit 時,在 test.txt 中寫下“第一次測試”的文字作爲記號。第二次 commit 時,在 test.txt 中寫下“第二次測試”的文字作爲記號。

這時候我們就處於第二次 commit 後的狀態了。也就是說 test.txt 文件裏面會有兩句話。如下圖。
在這裏插入圖片描述

git 日誌中也有兩次提交記錄了。如下圖所示。查看 git 日誌記錄可以用下面的命令行。

git log

在這裏插入圖片描述

退回過去

問題來,我在第二次 commit 後的狀態繼續操作,不小心刪除了什麼,如何讓項目回退到第一次 commit 的狀態呢?(也就是 test.txt 裏面只有“第一次測試”的文字的時候)

這時候就要用到 git 的版本管理功能了,讓項目回退到我們希望的某個 commit 點。我們可以使用下面的命令行來讓項目回退到過去。
hard 後面的字符是你希望退回的時間點的環境指針。如下圖所示。

git reset --hard 9be931523xxxxxxxxxxxxxx7a43dd

在這裏插入圖片描述
這時候,你再打開 test.txt 文件,你就回發現,裏面的內容已經退回第一次 commit 時的狀態了。
在這裏插入圖片描述
在用 git log 命令看一下日誌記錄。你會最新的日誌記錄也是顯示第一次 commit 你會發現第二次 commit 的記錄沒了。
在這裏插入圖片描述

回到未來

當我將項目回退到過去後,已經發現自己的錯誤在哪裏後,我怎麼講項目再回滾到未來呢?(這裏的未來指的是我們回退到第一次 commit 之前,即第二次 commit 的時間點)
同樣,我也可以使用 reset 命令。只是未來時間點的環境指針,需要使用下面命令來查詢。

git reflog

在這裏插入圖片描述
如上圖的紅色箭頭所示,我們可以知道未來時間點的環境指針。然後使用 reset 命令即可。

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