標籤:git
接著上一篇,在介紹一些git的使用
上篇中介紹了三板斧,都是基本的操作,這個項目一路上走來都發生了些什麼,你總應該有個大致瞭解吧,今天就介紹一下如何查看提交曆史
git log
這個命令會輸出某個分支上,從開始到現在每次提交發生了些什麼,預設把最新的提交放在最上面,方便大家,下面簡單說說它的幾個常用參數
-p:比較幾次提交之間的差異,可以跟上-n,比如git log -p -2/-3,這個在做代碼審查的時候很方便,可以看看其他共同作業者都做了哪些修改
--stat:僅僅顯示增改行數的統計
--pretty: 可以賦值,有oneline,short,full,fuller,format oneline是很好用的,這在提交數很大的時候很有用,還有一個是很有意思的,就是format,舉個例子
git log --pretty=format:"%h - %an, %ar : %s",同時把常用的預留位置列一下:
| 選項 |
說明 |
| %H |
提交對象(commit)的完整雜湊字串 |
| %h |
提交對象的簡短雜湊字串 |
| %T |
樹對象(tree)的完整雜湊字串 |
| %t |
樹對象的簡短雜湊字串 |
| %P |
父物件(parent)的完整雜湊字串 |
| %p |
父物件的簡短雜湊字串 |
%an
|
作者(author)的名字
|
| %ae |
作者的電子郵件地址 |
| %ad |
作者修訂日期(可以用 -date= 選項定製格式) |
| %ar |
作者修訂日期,按多久以前的方式顯示 |
| %cn |
提交者(committer)的名字
|
| %ce |
提交者的電子郵件地址 |
| %cd |
提交日期 |
| %cr |
提交日期,按多久以前的方式顯示 |
| %s |
提交說明 |
再把git log的常用選項列舉一下吧,具體的嘗試大家自行測試
-p : 按補丁格式顯示每個更新之間的差異
--stat : 顯示每次更新的檔案修改統計資訊
--shortstat : 只顯示 --stat中最後的行數修改添加移除統計
--name-only : 僅在提交資訊後顯示已修改的檔案清單
--name-status : 顯示新增、修改、刪除的檔案清單
--abbrev-commit : 僅顯示 SHA-1 的前幾個字元,而非所有的40個字元
--relative-date : 使用較短的相對時間顯示(比如,“2 weeks ago”)
--graph : 顯示 ASCII 的圖形表示的分支合并曆史
--pretty : 使用其他格式顯示曆史提交資訊,後面的參數上面已經說明了
git log還有一點比較好的功能:限制輸出長度
按照時間顯示的選項,比如 --since 和 --until,可以這樣去用
git log --since=2.weeks, git log --since="2016-05-25"這樣來指定後面的時間
類似這樣的匹配還有:
-(n) : 僅顯示最近的n條提交
--since, --after : 僅顯示指定時間之後的提交
--until, --before : 僅顯示指定時間之前的提交
--auther : 僅顯示指定作者的相關提交
--committer : 僅顯示指定提交者相關的提交
下面綜合運用一下: git log --pretty="%h:%s" --auther=wxl --since="2016-05-24" --before="2016-05-25" --no-merges -- t/ 關於命令最後說明一下,t/是項目t/目錄下的檔案,它前面的 -- 是為了讓路徑跟前面的選項分開
今天就到此,常用命令應該多熟悉了
git的使用入門介紹-2