这个git命令在git bash
中表现良好。
$ git log --author="\(david\)\|\(peter\)" --format="%h %<(22)%an %s"
但是当我将其添加到我的gitconfig
文件中时:
$ grep -E -e "alias|lolaf" .gitconfig
[alias]
lolaf = log --author="(david)|(peter)" --format="%h %<(22)%an %s"
# lolaf = log --author="\\(david\\)\\|\\(peter\\)" --pretty=format:'%h %\\<(22)%an %s'
# lolaf = log --author="\\(david\\)\\|\\(peter\\)" --format="%h %\\<(22)%an %s"
# lolaf = log --author="\\(david\\)\\|\\(peter\\)" --format="%h %<(22)%an %s"
# lolaf = log --author="\(david\)\|\(peter\)" --format="%h %<(22)%an %s"
# lolaf = log --author="(david)|(peter)" --pretty-format="%h %<(22)%an %s"
我遇到了这个错误。
$ git lolaf -- .
fatal: bad revision '%<(22)%an'
我认为问题是由于特殊字符的错误转义引起的。正如您所看到的,我尝试了几种不同的变体,但它们也没有起作用。
有什么建议吗?
'%<(22)%an'
解析为修订版本,我猜引号周围的--format
是有问题的。(即我认为它试图将'%<(22)%an'
作为log
的参数传递而不是将其保留为格式字符串的一部分) - 0x5453