1. 程式人生 > 實用技巧 >git版本控制

git版本控制

Git的版本回退速度非常快,因為Git在內部有個指向當前版本的HEAD指標,當你回退版本的時候,Git僅僅是把HEAD從當前版本指向回退的版本

1.修改了多次版本內容並提交 git add readme.txt(readme.txt為更改的檔名)、$ git commit -m "append GPL"(-m"append GPL"為註釋

2.$ git log或$ git log --pretty=oneline #檢視歷史版本記錄,按更新時間倒敘排列,最新更改的在最上面。在Git中,用HEAD表示當前版本,也就是最新的提交的,上一個版本就是HEAD^,上上一個版本就是HEAD^^

,當然往上100個版本寫100個^比較容易數不過來,所以寫成HEAD~100

$ git log --pretty=oneline
1094adb7b9b3807259d8cb349e7df1d4d6477073 (HEAD -> master) append GPL
e475afc93c209a690c39c13a46716e8fa000c366 add distributed
eaadf4e385e865d25c48e7ca9c8395c3f7dfaef0 wrote a readme file

3.$ git reset --hard HEAD^ #把當前版本回退到上一個版本

4.$ cat readme.txt #檢視當前版本內容

5.$ git reset --hard 1094a #回到之前最新版本(1094a為版本commit_id)

6.$ git reflog #記錄每次命令,防止忘記commit_id時可用此命令檢視

總結:

  • HEAD指向的版本是當前版本,因此,Git允許我們在版本的歷史之間穿梭,使用命令git reset --hard commit_id

  • 穿梭前,用git log可以檢視提交歷史,以便確定要回退到哪個版本。

  • 要重返未來,用git reflog檢視命令歷史,以便確定要回到未來的哪個版本。