Teach git-grep --name-only as synonym for -l

I expected git grep --name-only to give me only the file names,
much as git diff --name-only only generates filenames.  Alas the
option is -l, which matches common external greps but doesn't match
other parts of the git UI.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Shawn O. Pearce 2008-02-20 23:28:07 -05:00 committed by Junio C Hamano
parent 14a5c7c193
commit 2cd5dfd240
2 changed files with 4 additions and 1 deletions

View File

@ -75,9 +75,11 @@ OPTIONS
-n:: -n::
Prefix the line number to matching lines. Prefix the line number to matching lines.
-l | --files-with-matches | -L | --files-without-match:: -l | --files-with-matches | --name-only | -L | --files-without-match::
Instead of showing every matched line, show only the Instead of showing every matched line, show only the
names of files that contain (or do not contain) matches. names of files that contain (or do not contain) matches.
For better compatability with git-diff, --name-only is a
synonym for --files-with-matches.
-c | --count:: -c | --count::
Instead of showing every matched line, show the number of Instead of showing every matched line, show the number of

View File

@ -578,6 +578,7 @@ int cmd_grep(int argc, const char **argv, const char *prefix)
continue; continue;
} }
if (!strcmp("-l", arg) || if (!strcmp("-l", arg) ||
!strcmp("--name-only", arg) ||
!strcmp("--files-with-matches", arg)) { !strcmp("--files-with-matches", arg)) {
opt.name_only = 1; opt.name_only = 1;
continue; continue;