※コメントにてよりスマートな解決方法を提示して頂いたので、そちらを確認下さい。
git bisect と grep を組み合わせて使います。
下記の通り。
git log --reverse
を実行してinitial commitのハッシュ値をメモ。
git bisect start
bisect 開始。
git bisect bad
HEADをbad(=キーワードが既にある)状態として設定。
git bisect good <initial commit のハッシュ値>
initial commitをgood(=キーワードがまだない)状態として設定。
git bisect run sh -c "! grep -R <キーワード> <検索ディレクトリ>"
bisect の判定条件として、grepのキーワード検索結果を利用します。