Git for Windowsをv2に上げる過程でいろいろ調べていたところ、git grepの良さそうなオプションを見逃していたことに気付いた。僕は半年くらい前からVimのgrepprggit 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コマンドに渡すみたいな運用の方が良いかもしれない。