Context:
$ git version
git version 2.25.1
$ git log -L ^/bootstrap-sass/,+2 Gemfile
fatal: -L argument not 'start,end:file' or ':funcname:file':
^/bootstrap-sass/,+2
I expected the above to work, based on the contents of `git help log`,
which describes the regex format.
This regex format works correctly in `git blame -L`, and it appears the
manpage was copied across but not the implementation.
$ git help log
-L <start>,<end>:<file>, -L :<funcname>:<file>
Trace the evolution of the line range given by
"<start>,<end>" (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, 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,
--name-only, --name-status, --check) are not currently implemented.
<start> and <end> can take one of these forms:
• number
If <start> or <end> is a number, it specifies an
absolute line number (lines count from 1).
• /regex/
This form will use the first line matching the given
POSIX regex. If <start> is a regex, it will search from the end of the
previous -L range, if any, otherwise from the
start of file. If <start> is “^/regex/”, it will search
from the start of file. If <end> is a regex, it will search starting at
the line given by <start>.
• +offset or -offset
This is only valid for <end> and will specify a number
of lines before or after the line given by <start>.
If “:<funcname>” is given in place of <start> and <end>, it
is a regular expression that denotes the range from the first funcname
line that matches <funcname>, up to the
next funcname line. “:<funcname>” searches from the end of
the previous -L range, if any, otherwise from the start of file.
“^:<funcname>” searches from the start of file.