設定和配置
獲取和建立專案
基本快照
分支與合併
共享和更新專案
檢查和比較
打補丁
除錯
電子郵件
外部系統
伺服器管理
- 2.44.1 → 2.50.1 無更改
-
2.44.0
2024-02-23
- 2.43.1 → 2.43.7 無更改
-
2.43.0
2023-11-20
- 2.30.1 → 2.42.4 無更改
-
2.30.0
2020-12-27
- 2.25.1 → 2.29.3 無更改
-
2.25.0
2020-01-13
- 2.22.1 → 2.24.4 無更改
-
2.22.0
2019-06-07
- 2.18.1 → 2.21.4 無變更
-
2.18.0
2018-06-21
- 2.13.7 → 2.17.6 無更改
-
2.12.5
2017-09-22
- 2.11.4 無更改
-
2.10.5
2017-09-22
-
2.9.5
2017-07-30
- 2.4.12 → 2.8.6 無更改
-
2.3.10
2015-09-28
- 2.2.3 無變更
-
2.1.4
2014-12-17
-
2.0.5
2014-12-17
選項
為了控制顯示哪些修訂,gitk 支援適用於 git rev-list 命令的大多數選項。它還支援一些適用於 git diff-* 命令的選項,以控制如何顯示每個提交引入的更改。最後,它還支援一些 gitk 特定的選項。
由於命令列解析器的限制,gitk 通常只理解以 stuck 形式(參見 gitcli[7])帶有引數的選項。
rev-list 選項和引數
本手冊頁僅描述最常用的選項。有關完整列表,請參閱 git-rev-list[1]。
- --all
-
顯示所有引用(分支、標籤等)。
- --branches[=<pattern>]
- --tags[=<pattern>]
- --remotes[=<pattern>]
-
假裝所有分支(標籤、遠端分支,分別)都在命令列上列為 <commit>。如果給出 <pattern>,則將引用限制為匹配給定 shell glob 的引用。如果模式缺少 ?、* 或 [,則隱含在末尾加上 /*。
- --since=<date>
-
顯示特定日期之後的所有提交。
- --until=<date>
-
顯示特定日期之前的所有提交。
- --date-order
-
如果可能,按日期對提交進行排序。
- --merge
-
合併嘗試因衝突而停止後,顯示兩個分支(即 HEAD 和 MERGE_HEAD)之間歷史記錄中修改了衝突檔案且不存在於所有合併頭上的提交。
- --left-right
-
標記提交可從對稱差異的哪一側到達。來自左側的提交字首為 < 符號,來自右側的提交字首為 > 符號。
- --full-history
-
使用 <path>… 過濾歷史記錄時,不會修剪部分歷史記錄。(有關詳細說明,請參閱 git-log[1] 中的“歷史簡化”。)
- --simplify-merges
-
--full-history
的附加選項,用於從生成的結果歷史記錄中刪除一些不必要的合併,因為沒有選定的提交對此合併做出貢獻。(有關詳細說明,請參閱 git-log[1] 中的“歷史簡化”。) - --ancestry-path
-
當給定要顯示的一系列提交(例如 commit1..commit2 或 commit2 ^commit1)時,只顯示直接存在於 commit1 和 commit2 之間祖先鏈上的提交,即同時是 commit1 的後代和 commit2 的祖先的提交。(有關詳細說明,請參閱 git-log[1] 中的“歷史簡化”。)
- -L<start>,<end>:<file>
- -L:<funcname>:<file>
-
跟蹤由 <start>,<end> 或函式名正則表示式 <funcname> 給定的行範圍在 <file> 中的演變。您不能提供任何路徑規範限制符。目前這僅限於從單個修訂版開始的遍歷,即,您只能提供零個或一個正修訂版引數,並且 <start> 和 <end>(或 <funcname>)必須存在於起始修訂版中。您可以多次指定此選項。這隱含
--patch
。補丁輸出可以使用--no-patch
抑制,但其他差異格式(即--raw
、--numstat
、--shortstat
、--dirstat
、--summary
、--name-only
、--name-status
、--check
)目前尚未實現。<start> 和 <end> 可以採用以下形式之一
-
數字
如果 <start> 或 <end> 是一個數字,它指定一個絕對行號(行從 1 開始計數)。
-
/正則表示式/
此形式將使用匹配給定 POSIX 正則表示式的第一行。如果 <start> 是一個正則表示式,它將從前一個
-L
範圍的末尾開始搜尋(如果存在),否則從檔案開頭開始。如果 <start> 是^/regex/
,它將從檔案開頭開始搜尋。如果 <end> 是一個正則表示式,它將從 <start> 給定的行開始搜尋。 -
+偏移量 或 -偏移量
這僅對 <end> 有效,並將指定 <start> 給定行之前或之後的行數。
如果用
:
<funcname> 替換 <start> 和 <end>,它是一個正則表示式,表示從匹配 <funcname> 的第一個函式名行到下一個函式名行的範圍。:
<funcname> 從前一個-L
範圍的末尾開始搜尋(如果存在),否則從檔案開頭開始。^:
<funcname> 從檔案開頭開始搜尋。函式名的確定方式與git
diff
計算補丁塊頭部的方式相同(參見 gitattributes[5] 中的 定義自定義塊頭部)。 -
- <修訂範圍>
-
限制要顯示的修訂。這可以是一個單獨的修訂,表示從給定修訂開始向後顯示,也可以是“<from>..<to>”形式的範圍,以顯示 <from> 和 <to> 之間的所有修訂。請注意,可以應用更高階的修訂選擇。有關拼寫物件名稱的更完整列表,請參閱 gitrevisions[7]。
- <路徑>…
-
將提交限制為涉及給定路徑中檔案的提交。請注意,為避免與修訂名稱產生歧義,請使用“--”將路徑與任何前面的選項分開。
檔案
使用者配置和偏好設定儲存在
-
如果存在,則為
$XDG_CONFIG_HOME/git/gitk
,否則 -
如果存在,則為
$HOME/.gitk
如果上述兩者都不存在,則預設建立並使用 $XDG_CONFIG_HOME/git/gitk
。如果未設定 $XDG_CONFIG_HOME,則在所有情況下都預設為 $HOME/.config
。
歷史
Gitk 是第一個圖形化倉庫瀏覽器。它使用 tcl/tk 編寫。
gitk 實際上作為一個獨立專案維護,但為了方便終端使用者,穩定版本作為 Git 套件的一部分分發。
gitk-git/ 來自 Paul Mackerras 的 gitk 專案
git://ozlabs.org/~paulus/gitk