linux系統使用git修改檔案後進行版本的回溯
今天寫一篇關於在linux中使用git修改了檔案後,進行版本的回溯。這裡在centOS虛擬機器中安裝好git進行測試。
一、首先先對檔案進行修改
這裡修改的檔案是已經上傳到git倉庫中的檔案,在git倉庫中對這個檔案修改
原始檔如下:
修改以後如下:
二、檢視修改的內容,進行確認
我們在第一步修改了檔案後,按 ESC 後輸入 :wq 儲存並退出,我們進入倉庫的路徑可以使用 diff 來看檔案修改的內容。
eg: git diff hello.txt
這裡給大家簡單講講這些內容的意思, diff --git a/hello.txt b/hello.txt 中 a/hello.txt
三、將修改後的檔案新增到git倉庫中
這裡先使用 git add hello.txt,然後再輸入 git commit -m "add <and you>"
四、檢視git倉庫中的版本歷史記錄
因為當我們修改檔案修改很多時候,我們是記不住修改了什麼內容,所以git提供了 git log 指令檢視最近的歷史記錄。
上面的我們可以發現輸出資訊太多,看得比較複雜的,可以試試加上 --pretty=oneline 引數:
五、檔案寫錯時,將版本進行回退
首先,Git必須知道當前版本是哪個版本,在Git中,用HEAD表示當前版本,也就是最新的提交的8940372e.....(這裡的ID就是上圖 log 時候每一行的前面的一串字串),上一個版本就是HEAD^(510238c...),上上一個版本就是HEAD^^(a5df7c1...),當然往上100個版本寫100個^
現在,我們要把當前版本回退到上一個版本 second,就可以使用 git reset --hard HEAD^ 命令
我們輸出看看是否退回到了之前的版本:
我們可以繼續使用 git log 看看版本庫的狀態:
我們發現之前那個版本就直接不見了,當然git也給了回去原先版本的方法,不過要輸入的不再像之前一樣的 HEAD ,而是需要後面加上 版本的ID號,如下:
我們可以看到又回到了之前的版本回溯之前的版本,這就可以很人性化的管理版本,適合開發人員一起進行合作開發:
可能會問要是我之前沒有 log 就直接版本回溯了,不是就看不到我之前的那個版本的ID嗎?沒事,可以輸入 git relog 進行看所有版本的ID和資訊:
以上就是一些基本的版本回溯的指令與過程,剛接觸git的可以瞭解瞭解。