Bug: git log -L manpage claims regexes are supported, but they are not

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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.





[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux