不會檢視GIT版本歷史?趕緊收藏這個工具!
每天進步一點點,關注我們哦,每天分享測試技術文章
本文章出自【碼同學軟體測試】
碼同學公眾號:自動化軟體測試,領取資料可加:Matongxue_8
碼同學抖音號:小碼哥聊軟體測試
如果你想檢視git的版本演變歷史,可以這樣做:
開啟Git Bash,切換到專案目錄
-
$ pwd
-
$ ll
-
$ cd git-rainbow/
-
$ ll
-
$ cd mtxcrm/
-
$ ls -la
除了命令列方式,還有一種更直觀的方式,通過圖形介面化工具檢視git版本歷史。
輸入如下命令,開啟git歷史版本圖形介面管理工具
$ gitk
git版本歷史圖形介面工具分上下兩大區域
左上角是歷史樹
點中目錄樹中任意一個節點,跟該節點背景顏色相同的,右上部區域就是具體的commit資訊。右邊兩個列表分別列舉的是,作者資訊以及變更時間
當版本歷史資訊比較多,尤其是分支資訊比較多的情況下,看起來就容易迷茫了。我們逐個去檢視各個區塊。隨著我們點選不同的目錄樹節點,下面的ID資訊也在跟著變更
除此之外,Diff以及Tree的資訊也跟著變化
右下側區域除了可以點選Tree,也可以點選Patch。Patch指的是,針對某一次的變更對應的變更集
Patch左下側對應的Diff是Patch變更集中,
切換成Tree這種方式,可以看到,當前commit專案下的檔案目錄結構
除了展示形式不同外 ,Tree模式下,選中某一個檔案,右下側Diff中展示的是該檔案全部內容
Patch模式下,左下側Diff區域通過+加號告知我們這個檔案都增加了哪些內容
免費領取碼同學軟體測試課程筆記+超多學習資料+完整視訊+面試題,可加微信:Matongxue_8
之前通過gitlog命令檢視版本歷史的時候,只有Author作者的資訊。咱們gitk不僅有Author作者資訊,還有Committer提交者資訊,這兩者有什麼區別嗎?
某一次變更的提交既有Author作者又有Committer提交者,Author作者和Committer提交者有什麼區別嗎?試想,什麼情況下,作者和提交者是不同的呢?
比如在master分支中有一次commit,我把它挑出來放到temp分支中,也就是說,把某個分支挑選出來放到另外一個分支中去,這個時候作者和提交者就有可能不同了,也就是說,挑過來之前是有作者的,新生成的commit對應的Committer提交者是你自己,但是內容是從其他分支挑拿來的,也就是git cherry-pick,我自己把別人的分支挑揀過來,在新分支中提交,這個時候,作者Author仍保留挑揀前的作者,也就是說,這種情況下,Author作者和Committer提交者是不同的兩個賬號。
還有每一次的變更,通常是有父級Parent的,除了哪個沒有父級Parent?
以下這個節點只有Child子級,沒有父級Parent。因為它是這個倉庫中的第一個commit。它沒有上級,也就是說它沒有父級Parent,它只有子級Child。
然後就是Branches,指的是哪幾個Branches分支都包含這個commit
除此之外gitk還有一個功能,就是可以定製檢視的內容,依次單擊選單項“View”》“New View”
在如下檢視定義視窗Gitk view definition中,勾選All refs全部引用。
什麼是全部引用呢?
-
包括all(local) branches全部本地分支、All tags全部標籤、All remote-tracking branches全部遠端分支,All tags全部標籤指的是打標記的branches分支。
然後點選該視窗的【Apply】、【OK】
我們現在全部的git的操作都是在本地執行的,不涉及遠端的情況。
也就是在自己的工作機上檢視git版本歷史。如下截圖所示,這樣全部的branches分支資訊我們就全部獲取到了
還可以點選左上側目錄樹中1條commit資訊,右鍵》Create tag新增標籤
在建立標籤彈窗maketag中,標籤名以及訊息文字框分別輸入資訊,點【Create】
如下截圖所示,原來的節點名稱被標籤名稱所替代
免費領取碼同學軟體測試課程筆記+超多學習資料+學習完整視訊 ☞ 可加:Matongxue_8/關注碼同學公眾號:自動化軟體測試
本文著作權歸作者所有,任何形式的轉載都請聯絡作者獲得授權並註明出處。