Thread (1 message) 1 message, 1 author, 2016-06-15

Re: git grep argument parser bug

From: Junio C Hamano <hidden>
Date: 2016-06-15 23:08:06

Dylan Grafmyre [off-list ref] writes:
In both ubuntu versions of git 1.9.1 and 2.7.0

    git grep '-test'
    git grep '--help'

Or any other expressions literal leading with a single dash or double
dash get interpreted as argument flags and not as search expressions.
...
What I expect is grep results for the literal strings "-test" and "--help"
I think you'd need to adjust your expectations, then ;-).

This is how "grep" (not "git grep") works, and you use "-e", i.e.

	grep -e "-anything that begins with a dash" FILES...

to disambiguate.  If you are scripting, if you do not know what you
have in a variable, and if you are looking for the value in that
variable, you would always do

	grep -e "$variable" FILES...

not

        grep "$variable" FILES...

I think all of the above is pretty much the standard practice and
"git grep" merely follows suit, i.e.

	git grep -e "-help"

is designed to work that way to match users' expectations.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help