diff options
author | Taylor Blau <me@ttaylorr.com> | 2022-10-24 20:55:39 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2022-10-24 23:48:05 +0200 |
commit | 3dc95e09e1355ebde472bd5be37aa7b29ef774d3 (patch) | |
tree | 3f9eabadf001c1bf6d1946c6b6df6d48984b8b4b /shortlog.h | |
parent | shortlog: extract `--group` fragment for translation (diff) | |
download | git-3dc95e09e1355ebde472bd5be37aa7b29ef774d3.tar.xz git-3dc95e09e1355ebde472bd5be37aa7b29ef774d3.zip |
shortlog: support arbitrary commit format `--group`s
In addition to generating a shortlog based on committer, author, or the
identity in one or more specified trailers, it can be useful to generate
a shortlog based on an arbitrary commit format.
This can be used, for example, to generate a distribution of commit
activity over time, like so:
$ git shortlog --group='%cd' --date='format:%Y-%m' -s v2.37.0..
117 2022-06
274 2022-07
324 2022-08
263 2022-09
7 2022-10
Arbitrary commit formats can be used. In fact, `git shortlog`'s default
behavior (to count by commit authors) can be emulated as follows:
$ git shortlog --group='%aN <%aE>' ...
and future patches will make the default behavior (as well as
`--committer`, and `--group=trailer:<trailer>`) special cases of the
more flexible `--group` option.
Note also that the SHORTLOG_GROUP_FORMAT enum value is used only to
designate that `--group:<format>` is in use when in stdin mode to
declare that the combination is invalid.
Signed-off-by: Taylor Blau <me@ttaylorr.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'shortlog.h')
-rw-r--r-- | shortlog.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/shortlog.h b/shortlog.h index dc388dd459..4850a8c30f 100644 --- a/shortlog.h +++ b/shortlog.h @@ -22,8 +22,10 @@ struct shortlog { SHORTLOG_GROUP_AUTHOR = (1 << 0), SHORTLOG_GROUP_COMMITTER = (1 << 1), SHORTLOG_GROUP_TRAILER = (1 << 2), + SHORTLOG_GROUP_FORMAT = (1 << 3), } groups; struct string_list trailers; + struct string_list format; int email; struct string_list mailmap; |