Git for Windowsをv2に上げる過程でいろいろ調べていたところ、git grep
の良さそうなオプションを見逃していたことに気付いた。僕は半年くらい前からVimのgrepprg
でgit grep
を使っているので、その設定にいくつかオプションを追加することにした。
set grepprg=git\ grep\ --no-index\ --exclude-standard\ -I\ --perl-regexp\ --line-number
新たに追加したのは.gitignore
を考慮するようになる--exclude-standard
オプションとPerl互換の正規表現で検索できるようになる--perl-regexp
の2つだ。これでインデックスしていないファイルを含むが、.gitignore
で無視設定されているファイルとバイナリー・ファイルは含まないようになる。Perl互換の正規表現を有効にするオプションは-P
という短いオプションでも良いので、普段はオフで使いたい時だけ:grep
コマンドに渡すみたいな運用の方が良いかもしれない。