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

[PATCH v2 0/2] Improve line log documentation

From
Philippe Blain via GitGitGadget <gitgitgadget@gmail.com>
Date
Dec 26, 2019, 17:43 UTC
Message-ID
<pull.494.v2.git.1577382217.gitgitgadget@gmail.com>
In-Reply-To
<pull.494.git.1576559263.gitgitgadget@gmail.com>

These two patches add more information to the documentation for line history (git log -L) :

 * Mention explicitly that only the --patch and --no-patch diff formats are
   supported 
 * Mention that parameters <start>, <end> and <funcname> must exist in the
   starting revision

Regarding point 2 : I stumbled upon this while reading the history of 'filter_refs' in fetch-pack.c. I did

    git log -s -L :filter_refs:fetch-pack.c

which shows a list of commits starting with 745f7a8cac (fetch-pack: move core code to libgit.a, 2012-10-26). So then I did

    git log  -s -L :filter_refs:fetch-pack.c -L :filter_refs:builtin/fetch-pack.c
which fails with
    fatal: -L parameter 'filter_refs' starting at line 1: no match
Changes since v1:
 * Shorten the commit titles
 * Use long options names for --patch and --no-patch
 * Remove inexact mention of --function-context
 * Reword the clarification regarding <start>, <end> and <funcname> so that
   it doesn't apply only to regex parameters
 * Also add this clarification to Documentation/gitk.txt since it applies
   there as well
Philippe Blain (2):
  doc: log, gitk: document accepted line-log diff formats
  doc: log, gitk: line-log arguments must exist in starting revision
 Documentation/git-log.txt | 8 ++++++--
 Documentation/gitk.txt    | 8 ++++++--
 2 files changed, 12 insertions(+), 4 deletions(-)
base-commit: ad05a3d8e5a6a06443836b5e40434262d992889a
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-494%2Fphil-blain%2Fline-log-doc-v2
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-494/phil-blain/line-log-doc-v2
Pull-Request: https://github.com/gitgitgadget/git/pull/494
Range-diff vs v1:
 1:  0ed04a8629 ! 1:  e68ef0ced3 Documentation/git-log: document accepted line-log diff formats
     @@ -1,18 +1,16 @@
      Author: Philippe Blain <levraiphilippeblain@gmail.com>
      
     -    Documentation/git-log: document accepted line-log diff formats
     +    doc: log, gitk: document accepted line-log diff formats
      
          Currently the line-log functionality (git log -L) only supports
     -    displaying patch output (`-p`, its default behavior) and suppressing it
     -    (`-s`). A check was added in the code to that effect in 5314efaea (line-log:
     -    detect unsupported formats, 2019-03-10) but the documentation was not
     +    displaying patch output (`-p | --patch`, its default behavior) and suppressing it
     +    (`-s | --no-patch`). A check was added in the code to that effect in 5314efaea
     +    (line-log: detect unsupported formats, 2019-03-10) but the documentation was not
          updated.
      
          Explicitly mention that `-L` implies `-p`, that patch output can be
          suppressed using `-s`, and that all other diff formats are not allowed.
      
     -    Additionnally, mention that the ':<funcname>' form implies `--function-context`.
     -
          Signed-off-by: Philippe Blain <levraiphilippeblain@gmail.com>
      
       diff --git a/Documentation/git-log.txt b/Documentation/git-log.txt
     @@ -24,8 +22,7 @@
       	give zero or one positive revision arguments.
      -	You can specify this option more than once.
      +	You can specify this option more than once. Implies `--patch`.
     -+	If ``:<funcname>'' is given, implies `--function-context`.
     -+	Patch output can be suppressed using `-s`, but other diff formats
     ++	Patch output can be suppressed using `--no-patch`, but other diff formats
      +	(namely `--raw`, `--numstat`, `--shortstat`, `--dirstat`, `--summary`,
      +	`--name-only`, `--name-status`, `--check`) are not currently implemented.
       +
     @@ -41,8 +38,7 @@
       	give zero or one positive revision arguments.
      -	You can specify this option more than once.
      +	You can specify this option more than once. Implies `--patch`.
     -+	If ``:<funcname>'' is given, implies `--function-context`.
     -+	Patch output can be suppressed using `-s`, but other diff formats
     ++	Patch output can be suppressed using `--no-patch`, but other diff formats
      +	(namely `--raw`, `--numstat`, `--shortstat`, `--dirstat`, `--summary`,
      +	`--name-only`, `--name-status`, `--check`) are not currently implemented.
       +
 2:  4ea4eeae0c ! 2:  c7d489794c Documentation/git-log: mention that line-log regex must match in starting revision
     @@ -1,10 +1,10 @@
      Author: Philippe Blain <levraiphilippeblain@gmail.com>
      
     -    Documentation/git-log: mention that line-log regex must match in starting revision
     +    doc: log, gitk: line-log arguments must exist in starting revision
      
     -    When giving a regex as parameter <start> or <end> in
     -    `git log -L <start>,<end>:<file>`, or a function name in
     -    `git log -L :<funcname>:<file>`, the given regex must match in the starting
     +    The line number, regex or offset parameters <start> and <end> in
     +    `git log -L <start>,<end>:<file>`, or the function name regex in
     +    `git log -L :<funcname>:<file>` must exist in the starting
          revision, or else the command exits with a fatal error.
      
          This is not obvious in the documentation, so add a note to that
     @@ -20,8 +20,22 @@
       	not give any pathspec limiters.  This is currently limited to
       	a walk starting from a single revision, i.e., you may only
      -	give zero or one positive revision arguments.
     -+	give zero or one positive revision arguments, and any given regex for
     -+	<start> or <end> (or <funcname>) must match in the starting revision.
     ++	give zero or one positive revision arguments, and
     ++	<start> and <end> (or <funcname>) must exist in the starting revision.
       	You can specify this option more than once. Implies `--patch`.
     - 	If ``:<funcname>'' is given, implies `--function-context`.
     - 	Patch output can be suppressed using `-s`, but other diff formats
     + 	Patch output can be suppressed using `--no-patch`, but other diff formats
     + 	(namely `--raw`, `--numstat`, `--shortstat`, `--dirstat`, `--summary`,
     +
     + diff --git a/Documentation/gitk.txt b/Documentation/gitk.txt
     + --- a/Documentation/gitk.txt
     + +++ b/Documentation/gitk.txt
     +@@
     + 	(or the function name regex <funcname>) within the <file>.  You may
     + 	not give any pathspec limiters.  This is currently limited to
     + 	a walk starting from a single revision, i.e., you may only
     +-	give zero or one positive revision arguments.
     ++	give zero or one positive revision arguments, and
     ++	<start> and <end> (or <funcname>) must exist in the starting revision.
     + 	You can specify this option more than once. Implies `--patch`.
     + 	Patch output can be suppressed using `--no-patch`, but other diff formats
     + 	(namely `--raw`, `--numstat`, `--shortstat`, `--dirstat`, `--summary`,
-- 
gitgitgadget
Previous: SZEDER GáborNext: Philippe Blain via GitGitGadget
Message 16 of 18 in “Improve line log documentation”
  1. 0/2 Improve line log documentationPhilippe Blain via GitGitGadget, Dec 17, 2019
  2. 1/2 Documentation/git-log: document accepted line-log diff formatsPhilippe Blain via GitGitGadget, Dec 17, 2019
  3. SZEDER GáborDec 17, 2019
  4. Philippe BlainDec 18, 2019
  5. Derrick StoleeDec 17, 2019
  6. Philippe BlainDec 18, 2019
  7. 2/2 Documentation/git-log: mention that line-log regex must match in starting revisionPhilippe Blain via GitGitGadget, Dec 17, 2019
  8. Derrick StoleeDec 17, 2019
  9. Junio C HamanoDec 17, 2019
  10. Philippe BlainDec 18, 2019
  11. Derrick StoleeDec 18, 2019
  12. SZEDER GáborDec 18, 2019
  13. Junio C HamanoDec 18, 2019
  14. Philippe BlainDec 26, 2019
  15. SZEDER GáborDec 18, 2019
  16. 0/2 Improve line log documentationPhilippe Blain via GitGitGadget, Dec 26, 2019
  17. 1/2 doc: log, gitk: document accepted line-log diff formatsPhilippe Blain via GitGitGadget, Dec 26, 2019
  18. 2/2 doc: log, gitk: line-log arguments must exist in starting revisionPhilippe Blain via GitGitGadget, Dec 26, 2019

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.