summaryrefslogtreecommitdiff
path: root/builtin
diff options
context:
space:
mode:
authorLibravatar Junio C Hamano <gitster@pobox.com>2018-08-02 15:30:44 -0700
committerLibravatar Junio C Hamano <gitster@pobox.com>2018-08-02 15:30:44 -0700
commit87ece7ce1133ebc5d339cad5f6f92c02e5fc712d (patch)
tree80a92c51969d8893f56b74a595ab9c260cca1091 /builtin
parentMerge branch 'kg/gc-auto-windows-workaround' (diff)
parentgrep.c: teach 'git grep --only-matching' (diff)
downloadtgif-87ece7ce1133ebc5d339cad5f6f92c02e5fc712d.tar.xz
Merge branch 'tb/grep-only-matching'
"git grep" learned the "--only-matching" option. * tb/grep-only-matching: grep.c: teach 'git grep --only-matching' grep.c: extract show_line_header()
Diffstat (limited to 'builtin')
-rw-r--r--builtin/grep.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/builtin/grep.c b/builtin/grep.c
index f9678f19e4..056161f0f8 100644
--- a/builtin/grep.c
+++ b/builtin/grep.c
@@ -844,6 +844,8 @@ int cmd_grep(int argc, const char **argv, const char *prefix)
OPT_BOOL_F('z', "null", &opt.null_following_name,
N_("print NUL after filenames"),
PARSE_OPT_NOCOMPLETE),
+ OPT_BOOL('o', "only-matching", &opt.only_matching,
+ N_("show only matching parts of a line")),
OPT_BOOL('c', "count", &opt.count,
N_("show the number of matches instead of matching lines")),
OPT__COLOR(&opt.color, N_("highlight matches")),
@@ -963,6 +965,10 @@ int cmd_grep(int argc, const char **argv, const char *prefix)
if (!opt.pattern_list)
die(_("no pattern given."));
+ /* --only-matching has no effect with --invert. */
+ if (opt.invert)
+ opt.only_matching = 0;
+
/*
* We have to find "--" in a separate pass, because its presence
* influences how we will parse arguments that come before it.