というわけでアンケートを採ってみた結果。
コミットログは現在形?過去形?それとも……(択一)
- 現在形
- 5
- 過去形
- 3
現在形で書く人の方が多いらしい事が分かった。
まぁ、回答数が少なすぎて、有効な結果と言えるのかかなり怪しいけど……
とはいえ、役に立つ知見を得られたのも事実。
yossiy7 現在形・過去形というのは、ちょっと違っていて、実際は「誤:??→正:○○」とかそんな感じで一応過去形なので過去形にしたけど、両方ってのが正解かな。
「文章ではなく、記号的に記述する」というパターンは完全に想定外だった……
コメント欄でid:tyruさんが言及しているStack Overflow上の質問に付けられたこのコメントが引用している文章には以下の様に書かれている。
The use of the imperative, present tense is one that takes a little getting used to. When I started mentioning it, it was met with resistance. Usually along the lines of “The commit message records what I have done”. But, Git is a distributed version control system where there are potentially many places to get changes from. Rather than writing messages that say what you’ve done; consider these messages as the instructions for what applying the commit will do.
自分の(悲惨な)英語力を動員して読んでみるに、「Gitは分散VCSなので、(他の開発者の為に?)『そのコミットで何を行ったか』ではなく『そのコミットを適用する事で何が起こるか』を記述しろ」という事らしい。
私は今まで、「コミットログとは(ログの名の示す通り)変更内容を記述する物だ」という認識だったので、このようなコミットログの捉え方は考えた事がなかった。成る程この考え方ならば過去形はおかしいな。
しかし、その考え方は、適用する(pullしてくる)コミットを好き勝手に選べる環境じゃないと意味を成さないような……例えば、オリジナルのリポジトリからcloneし、その後変更点をpullする迄に、オリジナルに複数のコミットが追加されていた場合、「1つ目のコミットは無視するが、2つ目のコミットはpullする」のような場合(そもそも出来るのだろうか?)でも問題ないと保証出来る時に限られるのではないか?
それはかなり難しいと思うので、私はこのガイドラインには否定的。
尤も、件の365Gitには次のようにも書かれている。
Having said all that - it’s your code, your repository: so set up your own guidelines and stick to them.
あんまり気にせずに自分の好きなように運営するのが一番なのかもしれない。