除了定製輸出格式的選項之外,git log
還有許多非常實用的限制輸出長度的選項,也就是只輸出部分提交資訊。
之前我們已經看到過-2
了,它只顯示最近的兩條提交,實際上,這是-
選項的寫法,其中的n
可以是任何自然數,表示僅顯示最近的若干條提交。
不過實踐中我們是不太用這個選項的,git 在輸出所有提交時會自動呼叫分頁程式(less),要看更早的更新只需翻到下頁即可。
另外還有按照時間作限制的選項,比如--since
和--until
。下面的命令列出所有最近兩周內的提交:
$ git log --since=2.weeks
你可以給出各種時間格式,比如說具體的某一天(「2008-01-15」),或者是多久以前(「2 years 1 day 3 minutes ago」)。
還可以給出若干搜尋條件,列出符合的提交。
用(請注意,如果要得到同時滿足這兩個選項搜尋條件的提交,就必須用--author
選項顯示指定作者的提交,用--grep
選項搜尋提交說明中的關鍵字。
--all-match
選項。否則,滿足任意乙個條件的提交都會被匹配出來)
另乙個真正實用的git log
選項是路徑(path),如果只關心某些檔案或者目錄的歷史提交,可以在git log
選項的最後指定它們的路徑。
因為是放在最後位置上的選項,所以用兩個短劃線(--
)隔開之前的選項和後面限定的路徑名。
表 2-3 還列出了其他常用的類似選項。
選項 說明
-(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/
5610e3b - fix testcase failure when extended attribute
f563754 - demonstrate breakage of detached checkout wi
d1a43f2 - reset --hard/read-tree --reset -u: remove un
51a94af - fix "checkout --track -b newbranch" on detac
b0ad11e - pull: allow "git pull origin $something:$cur
git 專案有 20,000 多條提交,但我們給出搜尋選項後,僅列出了其中滿足條件的 6 條。 git git log 限制輸出長度
除了定製輸出格式的選項之外,git log還有許多非常實用的限制輸出長度的選項,也就是只輸出部分提交資訊。之前我們已經看到過 2了,它只顯示最近的兩條提交,實際上,這是 選項的寫法,其中的n可以是任何自然數,表示僅顯示最近的若干條提交。不過實踐中我們是不太用這個選項的,git 在輸出所有提交時會自動...
Git基礎 檢視提交歷史,限制輸出長度,撤銷
檢視提交歷史 限制輸出長度 撤銷操作 取消暫存的檔案 撤銷對檔案的修改 檢視提交歷史 git log該命令可以檢視提交歷史。不使用引數是會按照提交時間列出所有更新,並將最近的放在最上面,這個命令會列出每個提交的詳細資訊。該命令有許多現象可以幫助搜尋需要的提交。最常用的是 p,用來顯示每次提交的內容差...
限制textField長度
在 iphone 應用裡經常要限制使用者輸入字元的長度,比如密碼輸入框規定密碼長度是 x 到 y 位,下面這段 可以讓 uitextfield 限制輸入長度。bool textfield uitextfield textfield shouldchangecharactersinrange nsra...