按作者或分支过滤 git 日志

Filter git log by author or branch

在我的工作流程中,我通常只对我自己的分支和一些特定的分支感兴趣,例如 stagingmaster,并且希望我的 git log 能够反映这一点。我想出了这个命令:

git log --branches=staging* --author=my_name

问题是 authorbranches 过滤器似乎与逻辑运算符 and 相关联,这意味着我可以看到我的所有分支或暂存,但不能同时看到两者同时

换句话说,我只想看到我是作者的提交以及名为 staging 分支的分支的所有提交(无论作者是谁),只需一个命令。

有办法实现吗?

Git 将从 stdin 获取提交 ID,它不限于任何预先固定的构造运算符集,并且当结果可以使用现有工具实现时,没有理由复制任意选择逻辑。

(git rev-list --branches=staging*;git rev-list --all --author=my_name) \
| git log --stdin --no-walk --oneline