git grep の使い方

追跡しているファイルから探す

書き方

git grep [-n] [-i] [-c] [-l] パターン
git grep パターン コミット
git grep パターン -- パス

Git が追跡しているファイルだけを探します(無視したファイルや未追跡のファイルは見ない)。コミットを付けると、そのときの中身から探します。

よく使うオプション

オプション意味
-n行番号を付ける
-i大文字と小文字を区別しない
-cファイルごとの件数を出す
-l見つかったファイルの名前だけ出す
-w単語として合うものだけ探す

例

$ git grep -n TODOapp.py:12:# TODO: エラーのときの処理
src/menu.js:40:// TODO: 並び順

追跡しているファイルから TODO を探し、ファイル名と行番号を出します。

$ git grep -l API_KEY

API_KEY を書いたファイルの名前だけを出します。

$ git grep -n timeout v1.0

v1.0 のタグのときの中身から探します。昔の設定を調べるときに使います。

$ git grep -n -i error -- '*.py'

.py のファイルだけから、error を大文字小文字を区別せずに探します。

よくある間違い・注意

  • 追跡していないファイルや無視しているファイルは探しません。全部探したいときは grep -r を使います。

実際に打って練習する

Git コースの Lv55「書庫を探す git grep」で覚えます(第8章 探偵の書斎(履歴を調べる))。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。

Lv1〜10 は、登録不要・無料で遊べます(それより先はブロンズ以上のプランで遊べます)。

Git コマンド一覧(使い方と例)へ戻る