1. 程式人生 > >Git學習筆記06-版本回退

Git學習筆記06-版本回退

data 什麽 rap img sdn 歷史版本 最新版 最新 git學習

在實際中,向版本庫提交多次後,幾千行代碼肯定不記得每次都改了什麽,可以使用git log來查看提交日誌。也就是git commit -m 後面填寫的這部分內容

技術分享圖片技術分享圖片?

也可以使用git log --pretty=oneline讓日誌顯示的簡略點,--後面沒空格的。

技術分享圖片技術分享圖片?

黃色的很長的這一段是commit id也就是版本號

在Git中,使用HEAD表示當前版本,上一個版本就是HEAD^,再上一個就是HEAD^^。也可以用HEAD~100表示往上100個版本

使用git reset命令版本回退,--hard參數之後再說。

技術分享圖片技術分享圖片?

使用git log可以看到修改內容的那個版本沒有了

技術分享圖片技術分享圖片?

但是回退之後又後悔了,想要回到修改內容的版本怎麽辦。如果當前命令框還沒有關閉,找到修改內容那個版本對應的commit id

使用 git reset --hard commit id。就可以更改回去。commit id 可以只輸入前面幾位

技術分享圖片技術分享圖片?

可以看到修改部分內容又回來了

但是如果命令窗口被關閉了該怎麽辦?使用git reflog可以查看自己歷史操作命令

技術分享圖片技術分享圖片?

Git的版本回退速度非常快,因為Git內部有一個指向當前版本的HEAD指針,當版本回退時。僅僅只是把HEAD的指向改變了,然後順便把工作區更新了,所以把HEAD指向哪個版本,哪個就是最新版本。

小結:

HEAD指向的版本就是最新版本,因此使用 git reset --hard commit id可以在不同版本之間切換

git log可以查看提交歷史,方便確認要回到哪個歷史版本

git reflog可以查看命令歷史,方便確認要回到哪個未來版本

Git學習筆記06-版本回退