Git--log 檢視提交歷史
git中檢視提交歷史的話,使用的是 git log命令,具體命令及含義如下:
注意:以下截圖中,
Author 表示對程式碼做出修改的人
AuthorDate 表示對程式碼做出修改的時間
Commitor 表示提交程式碼的人,
Commitor 表示提交程式碼的時間
實際工作中,Author並不一定就是Commitor
-
另外:在檢視提交摘要或者詳情等情況下可能會出現‘ : ’,這個冒號表示還有沒展示完的內容,如果你想繼續檢視內容,就敲擊鍵盤上的回車鍵;如果你想退出:,可以敲擊鍵盤上的 q 。如下圖:
git log
檢視全部提交歷史 。 由於命令視窗的限制,如果提交歷史過多,可能無法完全顯示在螢幕上,這時候,可以敲擊回車鍵繼續檢視。如下圖:
git log -p
檢視全部提交歷史並展示每次修改的內容
git log -2
檢視最近2次提交歷史(注意:後面的數字是可以自定義的,也就是說,這種寫法是 git log -n 的體現)
git log -p -2
檢視最近2次提交歷史並展示修改的內容
git log - -stat
檢視提交歷史,並展示摘要內容(摘要會列出修改的檔案以及每個檔案中修改了多少行),如下圖:
- git log - -shortstat
檢視提交歷史,並顯示摘要內容(只是統計並展示修改了多少內容兒不顯示具體哪些檔案做出了修改),如下圖:
- git log - -shortstat
git log - -pretty xxx
該命令可以用來指定使用不同於預設格式的方式展示提交歷史,後面的xxx表示具體的取值,取值有:oneline , short , full , fuller 等
git log - -pretty=oneline
執行該命令後會把提交歷史的commit描述以及校驗和 顯示在同一行,並且省略預設格式下的其他內容,具體如下圖:
git log - -pretty=short
執行該命令後,只是比預設的格式少了Data日期的描述,具體如下圖:
git log - - pretty=full
執行該命令後,與預設的格式相比少了Data日期的描述,但是增加了commit 提交人資訊,如下圖:
git log - -pretty=fuller
執行該命令之後,效果如下:
其他用法:
git log - -name-only
僅在預設格式後面展示已經修改的檔案,如下圖:
git log - -abbrev-commit
僅顯示SHA-1的前幾個字元,而非全部字元(這個SHA-1字元就是指的校驗和,我習慣稱為commit id),如下圖:
git log - -relative-date
以相對當前的時間展示提交歷史,如下圖:
git log - -graph
在展示提交歷史前面加入簡單的ASCII圖形,區分每次提交歷史,如圖:
git log - -oneline
log後面直接跟–oneline時,顯示短的 校驗和,並與提交描述顯示在同一行,效果如下
git log - - author=使用者名稱
如:git log - -author=CnPeng 就會展示出CnPeng這個使用者的修改歷史 。注意:這裡的使用者名稱,是初始化git 時傳入的name . 執行效果如下圖:
git log - - commitor=使用者名稱
如:git log - -commitor=CnPeng 就會展示出CnPeng這個使用者的提交歷史。注意:這裡的使用者名稱,是初始化git 時傳入的name . 效果圖參考上面的author圖
git log - -since=時間
如:git log - -since=1days , 表示,展示1天前的提交歷史,具體的時間取值,可以有如下格式: xxxdays , xxxweeks , 2016-11-25 , 或 2 years 1 day 3 minutes ago ,效果圖如下:
另外,除了可以使用 - -since , 也可以使用 - - after , - -util , - -before , 取值方式相同
也可以使用如下這種組合模式:
git log - -pretty=”%h - %s” - -author=gitster - -since=”2008-10-01” \ - -before=”2008-11-01” - -no-merges - - t/
上面的組合模式中,%h , %s 是佔位符, 詳細的佔位符以及含義如下:
%H 提交物件(commit)的完整雜湊字串
%h 提交物件的簡短雜湊字串
%T 樹物件(tree)的完整雜湊字串
%t 樹物件的簡短雜湊字串
%P 父物件(parent)的完整雜湊字串
%p 父物件的簡短雜湊字串
%an 作者(author)的名字
%ae 作者的電子郵件地址
%ad 作者修訂日期(可以用 -date= 選項定製格式)
%ar 作者修訂日期,按多久以前的方式顯示
%cn 提交者(committer)的名字
%ce 提交者的電子郵件地址
%cd 提交日期
%cr 提交日期,按多久以前的方式顯示
%s 提交說明