Git shortlog
is used to summarize the git log outputs and group the commits by author.
By default, all commit messages are shown but argument --summary
or -s
skips the messages and gives a list of authors with their total number of commits.
--numbered
or -n
changes the ordering from alphabetical (by author ascending) to number of commits descending.
git shortlog -sn #Names and Number of commits
git shortlog -sne #Names along with their email ids and the Number of commits
or
git log --pretty=format:%ae \
| gawk -- '{ ++c[$0]; } END { for(cc in c) printf "%5d %s\n",c[cc],cc; }'
Note: Commits by the same person may not be grouped together where their name and/or email address has been spelled differently. For example John Doe
and Johnny Doe
will appear separately in the list. To resolve this, refer to the .mailmap
feature.