如果不帶任何引數,它會列出所有歷史記錄,最近的排在最上方,顯示提交物件的雜湊值,作者、提交日期、和提交說明。如果記錄過多,則按page up、page down、↓、↑來控制顯示;按q退出歷史記錄列表。
2.git log -n
如果不想向上面那樣全部顯示,可以選擇顯示前n條。
3.git log --stat -n
顯示簡要的增改行數統計,每次提交檔案的變更統計,-n 同上,前n條,可省略。
$ git log --stat -2
commit d0b9a20fac8abc7517c5a04c0fbb1d488f309bf5
author: beginman date: sat mar 1
23:26:43
2014 +0800
ok_posts/2014-02-27-customizing-git.md | 5 +++++
1 file changed, 5 insertions(+)
commit
8c186cd71492b7a3eae6df7de880b99efa0f87cf
author: beginman date: sat mar 1
23:26:10
2014 +0800
mi_posts/2014-02-27-customizing-git.md | 56 +++++++++++++++++++++++++++++++++++-
1 file changed, 55 insertions(+), 1 deletion(-)
每個提交都列出了修改過的檔案,以及其中新增和移除的行數,並在最後列出所有增減行數小計,比如上面的有5行做了更新。
4.git log -p -n
此命令同上,不過顯示更全了。
5.git log --pretty=oneline
一行顯示,只顯示雜湊值和提交說明。
6.gig lot --graph
ascii 字串表示的簡單圖形,形象地展示了每個提交所在的分支及其分化衍合情況
$ git log --pretty=format:"%h
%s" --graph
7.$ git log --pretty=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:"%h -%an,%ar : %s" -3
d0b9a20 -beginman,24 hours ago : ok
8c186cd -beginman,24 hours ago : mi
b2a3100 -beginman,24 hours ago : what?
顯示了前3條的資訊,簡單的雜湊值,作者,提交時間,提交說明。
個人感覺這個命令挺好的,為了方面使用,還是做個別名吧:
$ git config alias.logs "log --pretty=format:'%h -%an,%ar:%s'"
$ git config alias.logs
log --pretty=format:'%h -%an,%ar:%s'
$ git logs
....
8.指定路徑
比如說,指定專案路徑下的所有以install.md結尾的檔案的提交歷史:
--pretty=oneline *install.md
只需要加上檔案路徑作為引數即可。
9.指定日期、關鍵字、作者
如兩天前的提交歷史:git log --since=2.days
如指定作者為"beginman"的所有提交:$ git log --author=beginman
如指定關鍵字為「init」的所有提交:$ git log --grep=init
如指定提交者為"jack"的所有提交:$ git log --committer=jack
注意作者與提交者的關係:作者是程式的修改者,提交者是**提交人。
如指定2天前,作者為「beginman」的提交含有關鍵字'init'的前2條記錄:$ git log --since=2.days --author=beginman --grep=init -2
注意:上面選項後面的引數可以帶單雙引號,如--author="beginman"
使用說明如下:
選項 說明
-(n) 僅顯示最近的 n 條提交
--since, --after 僅顯示指定時間之後的提交。
--until, --before 僅顯示指定時間之前的提交。
--author 僅顯示指定作者相關的提交。
--committer 僅顯示指定提交者相關的提交。來看乙個實際的例子,如果要檢視 git 倉庫中,2008 年 10 月期間,junio hamano 提交的但未合併的測試指令碼(位於專案的 t/ 目錄下的檔案),可以用下面的查詢命令:
$ git log --pretty="%h - %s" --author=gitster --since="2008-10-01" \
--before="2008-11-01" --no-merges -- t/
參考:
git log 命令支援的選項
-p 按補丁格式顯示每個更新之間的差異。
--stat 顯示每次更新的檔案修改統計資訊。
--shortstat 只顯示 --stat 中最後的行數修改新增移除統計。
--name-only 僅在提交資訊後顯示已修改的檔案清單。
--name-status 顯示新增、修改、刪除的檔案清單。
--abbrev-commit 僅顯示 sha-1 的前幾個字元,而非所有的 40 個字元。
--relative-date 使用較短的相對時間顯示(比如,「2 weeks ago」)。
--graph 顯示 ascii 圖形表示的分支合併歷史。
--pretty 使用其他格式顯示歷史提交資訊。可用的選項包括 oneline,short,full,fuller 和 format(後跟指定格式)。插播兩條命令:
git log --oneline --graph --decorate --all
git log --color --graph --pretty=format:'%cred%h%creset -%c(yellow)%d%creset %s %cgreen(%cr) %c(bold blue)%creset' --abbrev-commit
10.git 圖形客戶端的使用
使用gitk圖形客戶端檢視歷史記錄。輸入$ gitk即可開啟,如下:
如果是linux平台下,可推薦如下:
linux 下6款 git 圖形客戶端
11.終極之道
終極之道就是檢視幫助,如下開啟文件檢視,前提是英文要好。
$ git log --help
launching default browser to
display html ...
git log常用命令
git log 檢視提交記錄,引數 n n是乙個正整數 檢視最近n次的提交資訊 git log 2 檢視最近2次的提交歷史記錄 filenamefilename為任意檔名,檢視指定檔案的提交資訊。注 檔名應該放到引數的最後位置,通常在前面加上 並用空格隔開表示是檔案。git log file1 fi...
Git log常用命令
git 可以同過log來檢視歷史記錄 p 是 patch 的縮寫,通過 p 引數,可以看到具體每個 commit 的改動細節 可以直接輸入 git show 在shou後面加上要檢視的commit引用 當commits有很多記錄時,預設的顯示方式不利於我們快速檢視,這時候我們可以 pretty來優化...
git log 常用命令
如果不帶任何引數,它會列出所有歷史記錄,最近的排在最上方,顯示提交物件的雜湊值,作者 提交日期 和提交說明。如果記錄過多,則按page up page down 來控制顯示 按q退出歷史記錄列表。如果不想向上面那樣全部顯示,可以選擇顯示前n條。顯示簡要的增改行數統計,每次提交檔案的變更統計,n 同上...