使用gitlog时,如何按用户进行筛选,以便只看到该用户的提交?


当前回答

在github上还有一个秘密方法。。。

您可以在提交视图中通过附加param?author=github_handle。例如,链接https://github.com/dynjs/dynjs/commits/master?author=jingweno显示了Dynjs项目的提交列表

其他回答

虽然,有很多有用的答案。然而,只是为了添加另一种方式。您也可以使用

git shortlog --author="<author name>" --format="%h %s"

它将以分组方式显示输出:

<Author Name> (5):
  4da3975f dependencies upgraded
  49172445 runtime dependencies resolved
  bff3e127 user-service, kratos, and guava dependencies upgraded
  414b6f1e dropwizard :- service, rmq and db-sharding depedencies upgraded
  a96af8d3 older dependecies removed

这里,<AuthorName>在当前分支下总共完成了5次提交。然而,您也可以使用--all在git存储库中的任何地方(所有分支)强制搜索。

一个陷阱:git内部试图将输入<author-name>与git数据库中作者的姓名和电子邮件匹配。它区分大小写。

您甚至可以通过简单地使用用户名的一部分来简化这一点:

git log --author=mr  #if you're looking for mrfoobar's commits
git log --author="that user"

如果您使用IntelliJ,您可以转到

View -> Tool Windows -> Git

选择“日志”并单击“用户:全部”

然后键入作者的姓名,它将显示该作者的每一次提交

您可以使用=或“空格”。例如,以下两个命令返回相同的

git log --author="Developer1"

git log --author "Developer1"