March 18, 2020
In the past, I’ve written about diving into the git log with grep and the pickaxe.
Those do not search by the author of a commit, however, which is somethign I often find the need to do after merging in master locally.
To search for authors of a commit,
git log provides an
It’s worth noting that author will match on what’s provided, even if it’s only a partial name.
To find all of my commits, I can write:
$ git log --author="Stephen Weiss"
As long as I’m the only Stephen Weiss, this will work.
If I’m the only Stephen who has committed to the code base, I could save some key strokes and do:
$ git log --author=Stephen
However, if there’s another Stephen, their commits would show up as well.
git logwill search only the current branch. If you want to search all branches, use the
$ git log --author="\(Stephen\)\|\(John\)"
Will search for commits where the author is Stephen or John.
Similarly, you can exclude commits by those authors using a regular expression in combination with the
--perl-regexp (to get negative lookaheads).
$ git log --author='^(?!Stephen|John).*$' --perl-regexp
(Note: the single quotes matter with the perl syntax.)
Thanks for reading! My name's Stephen Weiss. I live in Chicago with my wife, Kate, and dog, Finn.
Click here to see the archives of my weeks in review and sign up yourself!