TortoiseGit のログメッセージダイアログでデフォルトの表示期間を絞る

設定でデフォルトの表示期間を絞るか、コマンドライン引数で範囲指定するか。

前提

  • TortoiseGit v2.7.0

方法1. 設定でデフォルトの表示期間を絞る

Settings > General > Dialogs 1

Log messages というグループボックス内の Default Limitation of log messages のドロップダウンメニュー

選択肢として以下がある。

  • No limitation(全範囲)
  • Last selected date(前回選択した範囲)
  • Last N Commit(s)
  • Last N year(s)
  • Last N week(s)

何もいじってなければ一番上の No limitation になっているが、これだとコミット数が多い場合にダイアログ表示が重たい。適宜変えると良い。

参考: How to set the default dates range in TortoiseGit log dialog? - Stack Overflow

方法2. コマンドライン引数で表示範囲を絞る

まず指定ディレクトリにある Git ローカルリポジトリのログダイアログを開くコマンドラインは以下のとおり。

"C:\Program Files\TortoiseGit\bin\TortoiseGitProc.exe" prm=/command:log /path:"指定ディレクトリ"

続いて、直近の N を取得する系のオプションは以下のとおり。

/limit:"N Commit"
/limit:"N Year"
/limit:"N Month"
/limit:"N Week"

たとえば直近 10 件のコミットを表示したい場合は、以下のとおり。

"C:\Program Files\TortoiseGit\bin\TortoiseGitProc.exe" prm=/command:log /path:"指定ディレクトリ" /limit:"10 Commit"

方法1と方法2が混ざった時の挙動

直感的な挙動だが、一応書いておく。

  • Case1: 方法2(コマンドライン引数による指定)で、/limit オプションを指定しない

→ 方法1 で設定したデフォルトの範囲が使われる

  • Case2: 方法2(コマンドライン引数による指定)で、/limit オプションを指定する

→ 方法1 で設定したデフォルトの範囲は無視され、/limit オプションで指定した範囲が使われる

おわりに

TortoiseGit のログダイアログは本当に見やすいが、常に全件表示するのが(特にコミット数が多いリポジトリだと)いまいちだった。が、これで表示範囲を絞れるので、快適になった。