Thoughts on git commit mail
John Baldwin
jhb at FreeBSD.org
Tue Dec 15 23:59:05 UTC 2020
So far I have a few possible suggestions on the git commit mail
that I would find useful. Mostly it consists of making it a bit
leaner:
1) I would only display Author/AuthorDate. The committer we can
infer from the e-mail sender. This is what the gdb git commit
mails do. In this case you can also just use 'Date' instead
of AuthorDate, e.g.:
commit d79b57d3cf7151e45216c0f8501cdb2eb7a3bd86
Author: Glen Barber <gjb at FreeBSD.org>
AuthorDate: 2020-12-13 21:31:39 +0000
Commit: Glen Barber <gjb at FreeBSD.org>
CommitDate: 2020-12-13 21:31:39 +0000
could become:
commit d79b57d3cf7151e45216c0f8501cdb2eb7a3bd86
Author: Glen Barber <gjb at FreeBSD.org>
Date: 2020-12-13 21:31:39 +0000
2) I would drop the first sentence. It's a bit redundant to list
the committer an extra time. The branch name is useful, but it
might be nicer as metadata if possible, e.g.:
Branch: main
The one thing this does lose is when a commit is a "cross-repo"
commit (e.g. docs committer committing to src or vice versa).
The best way to handle this might be to add a new optional
metadata field. I don't have any good ideas on what to call
it. It could either list the repositories a committer has a
bit for, or it could just be some kind of boolean
(Cross-Commit: yes).
3) Perhaps put the URL in the metadata section as well to reduce
extra blank lines at the start of the mail.
Putting 1-3 together for the commit in question would give the
header below which I think is a bit more compact and similar to
svn formatting in that all the metadata is in a single block
without additional whitespace.
commit d79b57d3cf7151e45216c0f8501cdb2eb7a3bd86
Author: Glen Barber <gjb at FreeBSD.org>
Date: 2020-12-13 21:31:39 +0000
Branch: main
URL: https://cgit.FreeBSD.org/doc/commit/?id=d79b57d3cf7151e45216c0f8501cdb2eb7a3bd86
4) Some repository-specific things I would find helpful based on how
I have filtered svn commits:
- For doc, some kind of mail header ('X-Git-Foo') to indicate commits that
only touch translations as separate from English and top-level shared
areas. Previously I used some pattern matches on paths in svn subjects
to do this.
- For src, some kind of mail header to indicate commits that touch the
kernel vs only touching userland.
--
John Baldwin
More information about the freebsd-git
mailing list