屢次提交版本更新,當想回顧提交歷史時。能夠使用 git log
命令查看提交日誌。git
$ git log commit dd6c67d9f27fa3238c9ca9b74c01dd84e355a4fd (HEAD -> master) Author: 大夢三千秋 <yiluolion@gmail.com> Date: Mon Feb 3 20:16:52 2020 +0800 Fix issue 007 commit c4366e8566ae7d92b61f23613da28b1929b15feb Author: 大夢三千秋 <yiluolion@gmail.com> Date: Mon Feb 3 19:45:22 2020 +0800 New file and change something commit 9c3df1874694c55685c2823c62a03f7d85633fdb Author: 大夢三千秋 <yiluolion@gmail.com> Date: Mon Feb 3 18:40:27 2020 +0800 Create file about_git commit 6c291327f97b559f13c94f34ea23ffdb32af52c5 Author: 大夢三千秋 <yiluolion@gmail.com> Date: Mon Feb 3 18:37:26 2020 +0800 delelte README
git log
命令顯示的是從最近到最遠的提交日誌。微信
git log
還有選項能夠選擇,簡單介紹幾個經常使用的選項。分佈式
例如,-p
選項:3d
$ git log -p -2 commit 71b1806ca672f73ca97e745bb44ce0e99fa04c85 (HEAD -> master) Author: 大夢三千秋 <yiluolion@gmail.com> Date: Tue Feb 4 20:41:55 2020 +0800 Add test line diff --git a/readme.txt b/readme.txt index a68a8b2..c390466 100644 --- a/readme.txt +++ b/readme.txt @@ -1,3 +1,4 @@ Add something here Change something here +# test line commit dd6c67d9f27fa3238c9ca9b74c01dd84e355a4fd Author: 大夢三千秋 <yiluolion@gmail.com> Date: Mon Feb 3 20:16:52 2020 +0800 Fix issue 007 diff --git a/about_git.txt b/about_git.txt
選項 -p
的做用是,按補丁格式顯示每一個提交引入的差別。-2
選項表示僅顯示最近的兩次提交。版本控制
這個選項可以快速瀏覽協同者提交的 commit 帶來的變化。日誌
git log
還提供一個 --stat
選項,附帶提交的簡略統計信息:code
$ git log --stat commit 71b1806ca672f73ca97e745bb44ce0e99fa04c85 (HEAD -> master) Author: 大夢三千秋 <yiluolion@gmail.com> Date: Tue Feb 4 20:41:55 2020 +0800 Add test line readme.txt | 1 + 1 file changed, 1 insertion(+) commit dd6c67d9f27fa3238c9ca9b74c01dd84e355a4fd Author: 大夢三千秋 <yiluolion@gmail.com> Date: Mon Feb 3 20:16:52 2020 +0800 Fix issue 007 about_git.txt | 3 ++- readme.txt | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) commit c4366e8566ae7d92b61f23613da28b1929b15feb Author: 大夢三千秋 <yiluolion@gmail.com> Date: Mon Feb 3 19:45:22 2020 +0800
--stat
這個選項可以查看每次提交修改過的文件,有多少被修改被修改的文件哪行發生了變化,同時在最後有個總結。orm
git log
默認輸出的信息比較多,--pretty
選項搭配不一樣的格式可以展現不一樣形式的提交歷史。文檔
--pretty
提供的子選項中,oneline
可以大量縮減輸出的信息,只顯示關鍵的部分。get
$ git log --pretty=oneline 71b1806ca672f73ca97e745bb44ce0e99fa04c85 (HEAD -> master) Add test line dd6c67d9f27fa3238c9ca9b74c01dd84e355a4fd Fix issue 007 ...
還有一些 short
,medium
,full
等選項可以搭配使用,這些選項的使用所展現的格式基本一致,可是顯示的內容信息詳細程度不一。
還有一個 format
選項,很是特殊,可以自定義輸出的格式。對後期的提取分析有很大的幫助:
$ git log --pretty=format:"%h - %an, %ar : %s" 71b1806 - 大夢三千秋, 28 minutes ago : Add test line dd6c67d - 大夢三千秋, 25 hours ago : Fix issue 007 c4366e8 - 大夢三千秋, 25 hours ago : New file and change something 9c3df18 - 大夢三千秋, 26 hours ago : Create file about_git 6c29132 - 大夢三千秋, 27 hours ago : delelte README 956d16c - 大夢三千秋, 2 days ago : Wrote file README
上面使用的佔位符具體的意義以下:
佔位符 | 意義 |
---|---|
%h | 提交的簡寫哈希值 |
%an | 做者名稱 |
%ar | 做者修改時間,按照多久以前的形式展現 |
%s | 提交的說明 |
具體詳細的信息能夠查看官方文檔進行了解。
https://git-scm.com/docs/git-log#_pretty_formats
還有一個選項可以跟 oneline
或者 format
結合使用,就是 --graph
。這個選項可以以圖形的形式,在日誌左側形象展現分支以及合併的歷史:
$ git log --pretty=oneline --graph * 102a4a4f950cffae0acfb53a634012182fb8e8a1 (HEAD -> master) Fix conflict |\ | * 04702642dbfc9b5601b69e55c8ac38918441e9d2 (dev) Add test line by dev * | d4a2555ab7fdd1e2b3d7b768d217ab70797162a1 Add test line |/ * ae23d790611db0a0d9360cb55c700891a9e94bf9 Create file and add newline by branch dev * 576349c0e843bce799da5845c67a87a817dd0096 Create file DEV2 ...
以上就是簡單介紹 git log
命令支持的一些選項。其餘未涉及的選項,可經過下方的連接進行更詳細的瞭解。
https://git-scm.com/docs/git-log#_commit_formatting
以上就是本篇的主要內容
未完待續
歡迎關注微信公衆號《書所集錄》