ひよっこ。

I want to…

Subversionへのコミットコメントに関して

Posted by hikaruworld : 2009 9月 25

Subversionに代表されるSCM(Source Code Management バージョン管理システム)にコミットする際に、
適当なコメントを書かれていて後で困ることが多々あります。

TracやRedmineなどBTSとチケット連携しているような場合は基本的には問題ないのですが、
そうではない場合は、コミットコメントの重要性をきちんと認識しておきたい(させておきたい)ところです。

自戒も込めて、コミットログに書くべきこと書いておきます。
これはSubversion実践入門-達人プログラマに学ぶバージョン管理に書かれていることのコピーです。

ログのポリシーで書くべきこと

  1. このリビジョンにより解決される特定の問題の状態
  2. なぜその問題の解決が必要だったのかの簡単な説明
  3. 既知の副作用のリスト
  4. 変更したインターフェースのリスト
  5. 削除したものがあれば、その説明
  6. 他の関連するリビジョンやタグへの参照
  7. リビジョンに含まれるSubversionコマンド(merge, copy, moveなど)
  8. ログメッセージにユーモアを含めるのを恐れないこと

1,2,3,5,6に関しては必須だと思います。
4,7は必要があればで良いと思います。
8に関しては、wwwですが結構重要なことだと思います。

書かざるべき事

  1. ソースコード(実際のコードの変更はsvn diffで参照すべき)
  2. 変更したファイルのリスト(svn log –verboseで参照すべき)
  3. 他のリソースで記述してあることの詳しすぎる説明

1.は当然ですね。
2.に関しては、これを書かなくて良くても変更したインターフェイスのリストを書く必要があるのがちょっと?でした。影響範囲の問題でしょうか・・・
3.に関しては、例えばTracなどのチケットで情報を管理している場合は、当然書くべきことの1,2,3などは重複管理になってしまうから不要ですね。

実際、これが仕事で遵守することは難しいと思いますが、常に頭において作業したいところではあります。
最後に、eclipse上でコミットコメントのデフォル値を設定する方法があるので、方法を書いておきます。

設定メニューから、チーム⇒SVN⇒コメント・テンプレートを選択します。
新規を選択して任意のコメントを入力します。
comment
comment_add
これでデフォルトテンプレートとして適用されます。
実際にどのように参照されるかは下記を参照ください。
commtcomment

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

 
%d人のブロガーが「いいね」をつけました。