git log 檢視提交記錄,引數

2021-09-22 06:01:02 字數 2996 閱讀 5271

git log 檢視提交記錄,引數:

-n (n是乙個正整數),檢視最近n次的提交資訊

$ git log -2 檢視最近2次的提交歷史記錄

-- filename filename為任意檔名,檢視指定檔案的提交資訊。(注:檔名應該放到引數的最後位置,通常在前面加上--並用空格隔開表示是檔案。)

$ git log file1 file2 檢視file1檔案file2檔案的提交記錄

$ git log file/ 檢視file資料夾下所有檔案的提交記錄

--branchname branchname為任意乙個分支名字,檢視莫個分支上的提交記錄。同上,需要放到引數中的最後位置處。(注:如果分支名與檔名相同,系統會提示錯 誤,可通過--選項來指定給定的引數是分支名還是檔名。)例:在當前分支中有乙個名為v1的檔案,同時還存在乙個名為v1的分支,則:

$ git log v1 -- 此時的v1代表的是分支名字

$ git log -- v1 此時的v1代表的是名為v1的檔案

$ git log v1 -- v1

tagname或branchame 查詢指定標籤/分支中的提交記錄資訊

$ git log v1.0.. 查詢從v1.0以後的提交歷史記錄(不包含v1.0)

$ git log test..master 查詢master分支中的提交記錄但不包含test分支記錄

$ git log master..test 查詢test分支中的提交記錄但不辦含master分支記錄

$ git log master...test 查詢master或test分支中的提交記錄。

$ git log test --not master  遮蔽master分支

根據commit查詢日誌 

$ git log commit   查詢commit之前的記錄,包含commit

$ git log commit1 commit2 查詢commit1與commit2之間的記錄,包括commit1和commit2

$ git log commit1..commit2 同上,但是不包括commit1

其中,commit可以是提交雜湊值的簡寫模式,也可以使用head代替。head代表最後一次提交,head^為最後乙個提交的父提交,等同於head~1,head~2代表倒數第二次提交

--pretty 按指定格式顯示日誌資訊,可選項有:oneline,short,medium,full,fuller,email,raw以及format:,預設為medium,可以通過修改配置檔案來指定預設的

方式。$ git log (--pretty=)oneline

常見的format選項:

複製**

選項 說明

%h 提交物件(commit)的完整雜湊字串

%h 提交物件的簡短雜湊字串

%t 樹物件(tree)的完整雜湊字串

%t 樹物件的簡短雜湊字串

%p 父物件(parent)的完整雜湊字串

%p 父物件的簡短雜湊字串

%an 作者(author)的名字

%ae 作者的電子郵件位址

%ad 作者修訂日期(可以用 -date= 選項定製格式)

%ar 作者修訂日期,按多久以前的方式顯示

%cn 提交者(committer)的名字

%ce 提交者的電子郵件位址

%cd 提交日期

%cr 提交日期,按多久以前的方式顯示

%s 提交說明

複製**

注:作者是指最後一次修改檔案的人;而提交者是指提交該檔案的人。

$ git log --pretty=format:"%an %ae %ad %cn %ce %cd %cr %s" --graph

--mergs 檢視所有合併過的提交歷史記錄

--no-merges 檢視所有未被合併過的提交資訊

--author=someonet 查詢指定作者的提交記錄

$ git log --author=gbyukg

--since,--affter 僅顯示指定時間之後的提交(不包含當前日期)

--until,--before 僅顯示指定時間之前的提交(包含當前日期)

$ git log --before= --after=

--grep 通過提交說明資訊過濾提交日誌

$ git log --grep=hotfix 該命令會列出所有包含hotfix字樣的提交資訊說明的提交記錄

注意:如果想同時使用--grep和--author,必須在附加乙個--all-match引數。

-s 通過查詢檔案的變更內容來檢索出指定提交日誌 注:-s後沒有"=",與查詢內容之間也沒有空格符

$ git log --snew

-p 檢視提交時的補丁資訊

$ git log -p --no-merges -2

--stat 列出檔案的修改行數

--sortstat 只顯示--stat中最後行數修改新增移除的統計

--graph 以簡單的圖形方式列出提交記錄

--abbrev-commit 僅顯示 sha-1 的前幾個字元,而非所有的 40 個字元。

--relative-date 使用較短的相對時間顯示(比如,「2 weeks ago」)。

--name-only 僅在提交資訊後顯示已修改的檔案清單。

--name-status 顯示新增、修改、刪除的檔案清單。

git blame

用來檢視檔案的每個部分修改詳情

$git blame index.php

git log --author=xx --after=2015-11-01 --before=2015-12-01 --no-merges --shortstat --pretty=format:" %b $ %an $ %ci $ %s " > 1.txt

git log --author=xx --after=2015-11-01 --before=2015-12-01 --no-merges --shortstat --pretty=format:" %b $ %ae $ %ci $ %s " > 1.txt

Git log怎麼檢視分支提交過哪些檔案

以上簡單介紹了一些 git log 命令支援的選項。表 2 2 還列出了一些其他常用的選項及其釋義。選項 說明 p 按補丁格式顯示每個更新之間的差異。word diff 按 word diff 格式顯示差異。stat 顯示每次更新的檔案修改統計資訊。shortstat 只顯示 stat 中最後的行數...

git提交記錄檢視

目前開始使用git的使用者大部分都經歷過subversion,對於這兩種版本管控系統的切換需要一定時間去適應。本文旨在幫助這些使用者恢復部分熟悉的日誌查閱習慣。我們以乙個具體的例項來熟悉git中log的命令的使用。情景 1 當前版本的 編譯執行出現了乙個棘手的問題,我們打算查閱最近的提交修改看是否有...

git log檢視和儲存方法

git log檢視和儲存方法 1.git log filename 可以看到filename相關的commit記錄 2.git log p filename 可以顯示每次提交的diff 3.只看某次提交中的某個檔案變化,可以直接加上filename git show commit id filena...