12

したがって、実行する前にgit commit、次のように実行することがよくあります。

git grep --cached -l -I "debugger"

私はそれが似ていると思った:

git diff --cached

(これにより、コミットしようとしているすべての変更が表示されます。つまり、ステージングされたファイルの差分が表示されます)。

残念ながら、--cachedオプションgit grepは git にインデックス内のすべてを「のみ」見るように指示するだけであることがわかりました。

では、どのように実行git grepして、ステージングされたファイルのみを grep することができますか?

(はい、単純git diff --cachedに検索できることはわかっていますが、ステージングされたファイルをプログラムでgrepする機能が必要です。)

4

3 に答える 3

12

git diff-index --cached -S<pat> REV特定のパターンを追加または削除する変更を見つけるために、多くの pre-commit フックが使用されます。あなたの場合、git diff-index --cached -Sdebugger HEAD. -u差分を取得するために追加することもできます。それ以外の場合は、問題のあるファイルを特定するだけです。

于 2010-11-04T23:12:55.210 に答える