Git
日本語 ▾ トピック ▾ 最新バージョン ▾ gitkは2.44.0で最後に更新されました

名前

gitk - Gitリポジトリブラウザ

概要

gitk [<options>] [<revision-range>] [--] [<path>…​]

説明

リポジトリまたは選択したコミットセットの変更を表示します。これには、コミットグラフの視覚化、各コミットに関連する情報の表示、各リビジョンのツリー内のファイルの表示が含まれます。

オプション

表示するリビジョンを制御するために、gitkは_git rev-list_コマンドに適用可能なほとんどのオプションをサポートしています。また、各コミットが導入する変更の表示方法を制御するために、_git diff-*_コマンドに適用可能なオプションもいくつかサポートしています。最後に、gitk固有のオプションもいくつかサポートしています。

コマンドラインパーサーの制限により、gitkは一般に_stuck_形式(gitcli[7]を参照)の引数を持つオプションのみを理解します。

rev-list オプションと引数

このマニュアルページでは、最も頻繁に使用されるオプションのみを説明します。完全なリストについては、git-rev-list[1]を参照してください。

--all

すべてのリファレンス(ブランチ、タグなど)を表示します。

--branches[=<パターン>]
--tags[=<パターン>]
--remotes[=<パターン>]

すべてブランチ(タグ、リモートブランチなど)がコマンドラインに_<コミット>_としてリストされているかのように動作します。 _<パターン>_が指定されている場合、リファレンスを指定されたシェルグロブに一致するものに制限します。パターンに_?_、_*_、または_[_、_]_がない場合、末尾に_/*_が暗黙的に指定されます。

--since=<日付>

指定した日付より新しいコミットを表示します。

--until=<日付>

指定した日付より古いコミットを表示します。

--date-order

可能な場合はコミットを日付順にソートします。

--merge

マージの試みが競合で停止した後、競合したファイルを変更し、マージされているすべてのヘッドに存在しない、2つのブランチ(つまり、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<開始>,<終了>:<ファイル>
-L:<関数名>:<ファイル>

_<開始>,<終了>_ で指定された行範囲、または関数名正規表現 _<関数名>_ の _<ファイル>_ 内での進化を追跡します。パス指定リミッターを指定することはできません。これは現在、単一のリビジョンから開始するウォークに制限されています。つまり、正のリビジョン引数を 0 個または 1 個のみ指定でき、_<開始>_ と _<終了>_ (または _<関数名>_) は開始リビジョンに存在する必要があります。このオプションは複数回指定できます。 `--patch` を暗黙的に指定します。パッチ出力は `--no-patch` を使用して抑制できますが、他の diff 形式 (つまり `--raw`、`--numstat`、`--shortstat`、`--dirstat`、`--summary`、`--name-only`、`--name-status`、`--check`) は現在実装されていません。

_<開始>_ と _<終了>_ は、次のいずれかの形式をとることができます。

  • 数値

    _<開始>_ または _<終了>_ が数値の場合、絶対行番号を指定します (行は 1 からカウントされます)。

  • /正規表現/

    この形式は、指定された POSIX 正規表現に一致する最初の行を使用します。 _<開始>_ が正規表現の場合、前の `-L` 範囲の末尾から検索します。前の `-L` 範囲がない場合は、ファイルの先頭から検索します。 _<開始>_ が `^/正規表現/` の場合、ファイルの先頭から検索します。 _<終了>_ が正規表現の場合、_<開始>_ で指定された行から検索を開始します。

  • +オフセット または -オフセット

    これは _<終了>_ にのみ有効で、_<開始>_ で指定された行の前後の行数を指定します。

_<開始>_ と _<終了>_ の代わりに `:<関数名>` が指定されている場合、これは _<関数名>_ に一致する最初の関数名行から次の関数名行までの範囲を示す正規表現です。 `:<関数名>` は、前の `-L` 範囲の末尾から検索します。前の `-L` 範囲がない場合は、ファイルの先頭から検索します。 `^:<関数名>` はファイルの先頭から検索します。関数名は、`git diff` がパッチハンクヘッダーを決定するのと同じ方法で決定されます (gitattributes[5] の _カスタムハンクヘッダーの定義_ を参照)。

<リビジョン範囲>

表示するリビジョンを制限します。これは、指定されたリビジョンから戻ることを意味する単一のリビジョン、または _<開始>_ から _<終了>_ までのすべてのリビジョンを表示する " _<開始>..<終了>_" 形式の範囲にすることができます。より高度なリビジョン選択を適用できることに注意してください。オブジェクト名を記述する方法のより完全なリストについては、gitrevisions[7] を参照してください。

<パス>…​

コミットを、指定されたパス内のファイルに接触するものに制限します。リビジョン名とのあいまいさを避けるために、 "--" を使用してパスを前のオプションから区切ってください。

gitk固有のオプション

--argscmd=<コマンド>

gitkが表示するリビジョン範囲を決定する必要があるたびに実行されるコマンド。コマンドは、標準出力に表示される追加のリビジョンのリストを1行に1つずつ出力することが期待されます。表示するコミットのセットがリフレッシュ間で変化する可能性がある場合は、_<リビジョン範囲>_を明示的に指定する代わりにこれを使用してください。

--select-commit=<リファレンス>

グラフのロード後に、指定されたコミットを選択します。デフォルトの動作は、_--select-commit=HEAD_を指定することと同じです。

gitk v2.6.12.. include/scsi drivers/scsi

include/scsi または drivers/scsi サブディレクトリ内のいずれかのファイルを変更したバージョン v2.6.12 以降の変更を表示します。

gitk --since="2 weeks ago" -- gitk

過去2週間のファイル gitk への変更を表示します。"--" は、gitk という名前のブランチとの混同を避けるために必要です。

gitk --max-count=100 --all -- Makefile

ファイル Makefile に対して行われた最大100件の変更を表示します。現在のブランチの変更のみを探すのではなく、すべてのブランチで探します。

ファイル

ユーザー設定とプリファレンスは、

  • 存在する場合は $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

関連項目

qgit(1)

Qt を使用して C++ で書かれたリポジトリブラウザです。

tig(1)

Ncurses を使用して C で書かれた、最小限のリポジトリブラウザと Git ツール出力ハイライターです。

GIT

git[1] スイートの一部です。

scroll-to-top