Git--log 查看提交歷史【轉】

轉自:https://blog.csdn.net/hanfengzqh/article/details/79180216

it中查看提交歷史的話,使用的是 git log命令,具體命令及含義如下:

注意:以下截圖中,
Author 表示對代碼做出修改的人
AuthorDate 表示對代碼做出修改的時間
Commitor 表示提交代碼的人,
Commitor 表示提交代碼的時間
實際工作中,Author並不一定就是Commitor

-

另外:在查看提交摘要或者詳情等情況下可能會出現‘ : ’,這個冒號表示還有沒展示完的內容,如果你想繼續查看內容,就敲擊鍵盤上的回車鍵;如果你想退出:,可以敲擊鍵盤上的 q 。如下圖:

這裏寫圖片描述

  1. git log

    查看全部提交歷史 。 由於命令窗口的限制,如果提交歷史過多,可能無法完全顯示在屏幕上,這時候,可以敲擊回車鍵繼續查看。如下圖:

    這裏寫圖片描述

  2. git log -p

    查看全部提交歷史並展示每次修改的內容

  3. git log -2

    查看最近2次提交歷史(注意:後面的數字是可以自定義的,也就是說,這種寫法是 git log -n 的體現)

  4. git log -p -2

    查看最近2次提交歷史並展示修改的內容

  5. git log - -stat

    查看提交歷史,並展示摘要內容(摘要會列出修改的文件以及每個文件中修改了多少行),如下圖:

    這裏寫圖片描述

     

    • git log - -shortstat

     

    查看提交歷史,並顯示摘要內容(只是統計並展示修改了多少內容兒不顯示具體哪些文件做出了修改),如下圖:

    這裏寫圖片描述

  6. 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

      執行該命令之後,效果如下:

      這裏寫圖片描述

  7. 其他用法:

    • 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=1days

      這裏寫圖片描述

      另外,除了可以使用 - -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 提交說明

參考鏈接:https://git-scm.com/book/zh/v1/Git-%E5%9F%BA%E7%A1%80-%E6%9F%A5%E7%9C%8B%E6%8F%90%E4%BA%A4%E5%8E%86%E5%8F%B2

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章