« チケット駆動開発の適用範囲part3~ストーリー駆動のチケット駆動開発 | トップページ | アーキテクチャではトレードオフは避けられない »

2012/04/07

コミットフックの強化方法

コミットフックを強化する方法が公開されているのでリンクしておく。
「No Ticket, No Commit」を強化するための方法なのでチケット駆動開発ではとても重要な設定になる。

【元ネタ1】
hg commitと同時にRedmineのリポジトリ情報を更新する - いろいろな何か

Mercurial のフックを利用して Redmine のチケット操作を自動化する (フェンリル | デベロッパーズブログ)

小技(0.9): コミットと同時にリポジトリの情報を取得する | Redmine.JP Blog

Mercurialでコミットする時に、SVNコミットの時と同様にRedmineのWebサービス機能を使えば、コミットフックしたらコミットログに書かれたチケットNoに自動リンクさせることができる。
小規模なチームならこの方法が一番お手軽だろう。

【元ネタ2】
TurtleMineプラグインを導入してTortoiseHGのコミットメッセージにRedmineのチケット内容を自動で入れる (フェンリル | デベロッパーズブログ)

redmine-projects - Home of Redmine programs and plugins - Google Project Hosting

InstallAndSetupSvn - turtlemine - Instructions on how to install and setup the plugin for use in Tortoise Svn. - Tortoise Redmine Plugin - Google Project Hosting

InstallAndSetupHg - redmine-projects - Instructions on how to install and setup the plugin for use with TortoiseHg. - Home of Redmine programs and plugins - Google Project Hosting

TortoiseSVNやTortoiseHgでコミットする時に、コミットログ画面からRedmineチケット一覧を表示してコミットログにチケットの概要を自動保管してくれる。
EclipseのMylynと同じ機能。
コミットする時に逐一ブラウザを開いてチケットを確認する必要がないので、楽になる。
TortoiseGitでも同様の機能があるらしい。

【元ネタ3】
Twitter / @mikoto20000: Gitのブランチ名からチケットに対応付けるプラグインRedmine Git Branch Hook Pluginをリリースしました。http://goo.gl/t8WHN

mikoto20000/redmine_git_branch_hook ・ GitHub

Gitのトピックブランチ上で修正したら、コミットログに書かれたブランチ名から該当のチケットNoへ自動リンクしてくれるらしい。
トピックブランチとチケットが1対1に対応するように運用していれば、コミットログを書くのが楽になる。
@LightningXさんも似たようなパッチを公開されている。

Twitter / @LightningX: gistで晒してみる。 http://bit.ly/HbDond RT @LightningX: Redmineをいじって、hoge-234というブランチにコミット/プッシュすると自動的に234のチケットに関連づけるパッチを作成してみた。

Redmine branch-ticket relation(like hoge-123 branch relate to ticket 123). ? Gist

Redmineによるタスクマネジメント実践技法」に書いたけれど、トピックブランチとチケット駆動開発はとても相性が良い。
トピックブランチを作るタイミングは普通はバグ修正や機能改善パッチなので、チケット1個に収まる作業量になりやすい。
GitやMercurialのように、各開発者のトピックブランチ上で修正後にtrunkへプッシュまたはリベースしてトピックブランチを廃止する運用が普通ならば、気持よくチケット駆動開発を運用できるだろう。

構成管理とチケット駆動開発の連携方法はまだまだ改善の余地がある。

【追記】
Gitでも、コミット時にRedmineチケット一覧を表示してチケットNoを補完してくれるパッチがある。

Twitter / @itmammoth: こりゃあ便利だ。チケット駆動開発に拍車がかかるぜ。 Git-Redmine: GitのコミットとRedmineを連携する。チケット駆動開発にも。 (ゆめ技:ゆめみスタッフブログ) http://yumewaza.yumemi.co.jp/2011/08/git-redmine-integration-using-rest-api-python.html.

gitとRedmineを連携: プログラマの思索

Git-Redmine: GitのコミットとRedmineを連携する。チケット駆動開発にも。 (ゆめ技:ゆめみスタッフブログ)

|

« チケット駆動開発の適用範囲part3~ストーリー駆動のチケット駆動開発 | トップページ | アーキテクチャではトレードオフは避けられない »

廃止Mercurial」カテゴリの記事

構成管理・Git」カテゴリの記事

チケット駆動開発」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



« チケット駆動開発の適用範囲part3~ストーリー駆動のチケット駆動開発 | トップページ | アーキテクチャではトレードオフは避けられない »