For the sake of this question, let's agree on this definition of "good commit message" from here:
Your comment should be brief and to the point, describing what was changed and possibly why.
and accept that referencing a bug/issue in a commit message is a good thing.
Now, there are a lot of tools that integrate with VCS repositories and, for them to function, require commit messages to contain various "control information" which generally does not add value in the historical sense? Think,
- Amount of time spent fixing an issue (
- A /cc to notify other team members of the changeset (
/cc john, jill)
- A tag to the CI server to deploy the changeset to development/staging/production (
- Setting a reviewer (
Granted, this is all very convenient for developers in the short term (why leave console to push a button in the CI interface when I can add a short string to commit message), but I find these messages to clutter changelog too much and way too infrastructure-specific (what if we change to a Time Tracker which uses slightly different syntax?).
What's your take on these messages and where do you draw the line on what to accept and what to forbid?