I notice that BitBucket fails to observe one important principle about tense in Git commit messages: one is supposed to write in the present tense, showing what the commit does, rather than what one did.
When I edit a file on line, BitBucket populates the commit message with (say) "README.md edited online with Bitbucket", etc. Github, by comparison, populates it with "Update README.md".
There are some useful comments about good Git commit-message style on Tim Pope's blog. Here are some remarks by Linus Torvalds about commit-message style.
Some people say one should be writing in the imperative mood. In Chinese, if one uses a concise register suited to list-making, verbal aspect is likely to be omitted, so that it may be impossible to tell the difference between past, present, and imperative forms.
The real question is: who or what is the subject of the verb in a commit message? The programmer? Or the code itself?
In cases where there is a difference between the English first and third person singular, the first person sounds like the programmer speaking (or if you're inclined that way, the code itself)
"refactor main()" => "In this commit *I* refactor main()"
while the third person sounds like the commit's action is being described
"refactors main()" => "This commit refactors main()".
I can't say I see the suitability of imperative mood, though.
At times I find it useful not even to use a verb at all, such as when I commit after a merge — I just enter "after merge". Is more than that effective?
[end]