112

我知道,如果我只想在具有某些扩展名的文件上查找模式,我可以这样做:

// searches recursively and matches case insensitively in only javascript files
// for "res" from the current directory
grep -iIr --include=*.js res ./

我一直在尝试寻找一种通过 git grep 执行此操作的方法(以利用 git grep 的速度从它存储在其树中的索引中),但无济于事。我在这里看到排除某些文件类型是不可能的。

4

3 回答 3

176

是的,例如:

git grep res -- '*.js'
于 2012-12-13T21:16:09.497 回答
3

尝试这样做:

find . -type f -iname '*.js' -exec grep -i 'pattern' {} +
于 2012-12-13T20:14:35.177 回答
0

如果要搜索所有分支,可以使用以下命令:

git log -Sres --all --name-only -- '*.js'

(我看到你指定了 git grep;对我来说,这里的方法似乎更简单、更容易记住——更像是我通常需要的其他操作。)

于 2020-06-26T23:29:22.080 回答