在工作中,我们有一个git repo,其中大多数提交都是由bot用户自动提交的。有时我更喜欢从该repo查看git日志,但没有看到自动提交。我猜它可以被描述为倒置的“git log --author”或“git log --exclude-author = botuser”,如果存在选项的话。
目前我执行以下操作,将其缩写为bash别名。
git log --format="%H %aE" | grep -v -F botuser@domain | while read hash email; do git log -1 $hash; echo; done | less
我的问题是,如果对我想要完成的事情有一个不那么强硬的解决方案?
答案 0 :(得分:35)
来自https://coderwall.com/p/tzdzwa:
git log --perl-regexp --author='^((?!excluded-author-regex).*)$'
这对我有用。
如果您不想每次都指定--perl-regexp
:
git config --global grep.patternType perl
答案 1 :(得分:17)
目前不是,虽然there seems to have been some discussion关于将来支持-v
选项,或者使当前git log --not
适用于--author
,--committer
和{{ 1}}。
答案 2 :(得分:5)
其他一些答案引用了其中的部分内容,但是我在回购交易中使用了我见过的here的策略就成功了
git log --invert-grep --author=<pattern>
您可以根据需要添加任意数量的作者模式。就我而言,最好的模式是完整的电子邮件,因为它是唯一的
答案 3 :(得分:-1)