为什么带有perl regex的git-log后面出现负数会导致致命错误?

要么我无法获得git-log的regexp grep功能来使用基于Perl的regexp(pcre)进行搜索,要么可以,但是它不能与否定的后向配合使用。

git log -p -P -G'(?<!-)title'

输出结果

fatal: invalid regex: Invalid preceding regular expression

但是,如果git-grep是任何指标,则pcre支持和负向后退似乎有效。 例如。 git grep -P '(?<!-)title'返回预期结果。

git版本2.21.0(Apple Git-122.2)

lipton_12345678 回答:为什么带有perl regex的git-log后面出现负数会导致致命错误?

-P不影响-G。您可以通过将-P替换为-F(或--fixed-string)来进行验证:即使固定字符串中根本没有环顾四周,您仍然会得到相同的错误。>

-P的文档中说

将限制模式视为与Perl兼容的正则表达式。

注意单词“ patterns”。实际上,--grep选项提到了它:

-grep =

另一方面,-G不会:

-G

本文链接:https://www.f2er.com/2814636.html

大家都在问