git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v3 0/2] grep.c: teach --only-matching to 'git-grep(1)'

From
Taylor Blau <me@ttaylorr.com>
Date
Jul 3, 2018, 21:51 UTC
Message-ID
<cover.1530654455.git.me@ttaylorr.com>
In-Reply-To
<cover.1529961706.git.me@ttaylorr.com>
Hi,

Attached here is a third re-roll of my series to teach 'git grep --only-matching'. (I didn't mention it in the thread, but I _thought_ that twice would be enough, so I think Peff's advice about not counting on anything being the final re-roll of something applies to my thoughts, too ;-) ).

Since last time:
  - The second patch has been amended to include the full invocation of
    'git grep' (including `--column`, `--only-matching`, and
    `--line-number`) [1].
  - The second patch has been also amended to add the new option
    (`--only-matching`) to Documentation/git-grep.txt per [2].

An inter-diff is available below, and thanks as always for your review :-).

Thanks, Taylor

[1]: https://public-inbox.org/git/20180703143820.GC23556@sigill.intra.peff.net/ [2]: https://public-inbox.org/git/xmqq1sckoxk8.fsf@gitster-ct.c.googlers.com/

Taylor Blau (2):
  grep.c: extract show_line_header()
  grep.c: teach 'git grep --only-matching'
 Documentation/git-grep.txt |  6 ++-
 builtin/grep.c             |  6 +++
 grep.c                     | 91 ++++++++++++++++++++++++--------------
 grep.h                     |  1 +
 t/t7810-grep.sh            | 15 +++++++
 5 files changed, 85 insertions(+), 34 deletions(-)
Inter-diff (since v2):
diff --git a/Documentation/git-grep.txt b/Documentation/git-grep.txt
index 0de3493b80..be13fc3253 100644
--- a/Documentation/git-grep.txt
+++ b/Documentation/git-grep.txt
@@ -17,7 +17,7 @@ SYNOPSIS
 	   [-l | --files-with-matches] [-L | --files-without-match]
 	   [(-O | --open-files-in-pager) [<pager>]]
 	   [-z | --null]
-	   [-c | --count] [--all-match] [-q | --quiet]
+	   [ -o | --only-matching ] [-c | --count] [--all-match] [-q | --quiet]
 	   [--max-depth <depth>]
 	   [--color[=<when>] | --no-color]
 	   [--break] [--heading] [-p | --show-function]
@@ -201,6 +201,10 @@ providing this option will cause it to die.
 	Output \0 instead of the character that normally follows a
 	file name.

+-o::
+--only-matching::
+  Output only the matching part of the lines.
+
 -c::
 --count::
 	Instead of showing every matched line, show the number of

--
2.18.0
Previous: Junio C HamanoNext: Taylor Blau
Message 15 of 28 in “grep.c: teach --only-matching to 'git-grep(1)'”
  1. 0/2 grep.c: teach --only-matching to 'git-grep(1)'Taylor Blau, Jun 25, 2018
  2. 1/2 grep.c: extract show_line_header()Taylor Blau, Jun 25, 2018
  3. 2/2 grep.c: teach 'git grep --only-matching'Taylor Blau, Jun 25, 2018
  4. Junio C HamanoJun 27, 2018
  5. Taylor BlauJun 27, 2018
  6. Junio C HamanoJun 27, 2018
  7. Taylor BlauJun 27, 2018
  8. Jeff KingJun 28, 2018
  9. 0/2 teach --only-matching to 'git-grep(1)'Taylor Blau, Jul 2, 2018
  10. 1/2 grep.c: extract show_line_header()Taylor Blau, Jul 2, 2018
  11. 2/2 grep.c: teach 'git grep --only-matching'Taylor Blau, Jul 2, 2018
  12. Jeff KingJul 3, 2018
  13. Jeff KingJul 3, 2018
  14. Junio C HamanoJul 3, 2018
  15. 0/2 grep.c: teach --only-matching to 'git-grep(1)'Taylor Blau, Jul 3, 2018
  16. 1/2 grep.c: extract show_line_header()Taylor Blau, Jul 3, 2018
  17. 2/2 grep.c: teach 'git grep --only-matching'Taylor Blau, Jul 3, 2018
  18. grep.c: teach 'git grep --only-matching'Taylor Blau, Jul 4, 2018
  19. Taylor BlauJul 4, 2018
  20. Junio C HamanoJul 6, 2018
  21. Jeff KingJul 5, 2018
  22. Taylor BlauJul 5, 2018
  23. Junio C HamanoJul 6, 2018
  24. Taylor BlauJul 6, 2018
  25. Jeff KingJul 6, 2018
  26. Junio C HamanoJul 6, 2018
  27. grep.c: teach 'git grep --only-matching'Taylor Blau, Jul 9, 2018
  28. Taylor BlauJul 9, 2018

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.