Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

hg grep --exclude pattern

Tags:

grep

mercurial

How do you specify the --exclude/-X parameter when using hg grep?

I've tried every kind of bare and pattern syntax I've ever come across (including a few regex dialects I know), but I can't even get it to work with the most simple example.

I'm mostly interested in filtering out some binary files and minified JavaScript files (*.min.js) from the search.

I'm on Windows, if that's pertinent.

like image 342
J F Avatar asked Jun 05 '12 18:06

J F


2 Answers

See hg help patterns. By default, the pattern is treated as a shell glob.

If you want to use a regular expression, you can try something like this:

hg grep -X "re:.*\.min\.js$" <search term>
like image 114
Tim Henigan Avatar answered Oct 18 '22 14:10

Tim Henigan


hg help patterns explains that Globs are rooted at the current directory; a glob such as "*.c" will only match files in the current directory ending with ".c". So to match any file with an extension .min.js using a glob you'll need a leading wildcard like --exclude '**/*.min.js'

like image 34
Flwyd Avatar answered Oct 18 '22 15:10

Flwyd