May 25, 2007
Subversion と Trac の連携にチャレンジ (1)
Subversion には、クライアントプログラム用に "bugtraq" で始まるプロパティが規定されている。 このプロパティが指定されているディレクトリはバグトラッキングシステムとの連携機能が特別に用意される(大抵のクライアントで)。 というわけで、Subversion と Trac を連携させてみた。
- Issue Tracker Integration
- http://svn.collab.net/subclipse/help/topic/org.tigris.subversion.subclipse.doc/html/reference/issuetracker.html
- Integration of Subversion (GUI) clients with Bug Tracking Tools
- http://guest:guest@tortoisesvn.tigris.org/svn/tortoisesvn/trunk/doc/issuetrackers.txt
設定したプロパティ
設定するのはディレクトリのみで OK。 TortoiseSVN を使用すると再帰的に設定を行ってくれるので便利。
| bugtraq_url | https://www.example.com/trac/ticket/%BUGID% | Issue Tracker の URL。"%BUGID%"という文字列がコミット時に入力された Issue ID に自動的に置換される。 |
| bugtraq_label | "Ticket ID" | Subversion クライアントに表示される ID 用のラベル。Trac の場合は Bug も Issue も Ticket と呼ばれているので Ticket ID にしている。 |
| bugtraq_message | "#%BUGID%" | コミット時、コメントに自動的に追記されるメッセージ。 |
| bugtraq_warnifnoissue | false | コミット時に Issue ID が指定されなかった場合に警告をするか否か。個人的にコード以外の情報も Subversion で管理しているので false にしているが、開発用リソースのみが格納されているディレクトリの場合は true の方が良いかもしれない。 |
| bugtraq_number | true | Issue ID が数値かどうか。Issue ID が Subversion クライアントに入力された際、クライアントが Issue ID をバリデーションしてくれる。 |
| bugtraq_append | false | bugtraq_message で指定したメッセージを、ユーザが入力したコメントの「前」に追記するか「後」に追記するかを指定する。false の時に前になる。 |
| bugtraq_logregex | "#?(\d+)" | Issue ID の正規表現。Issue ID が Subversion クライアントに入力された際、クライアントが Issue ID をバリデーションしてくれる。 |
TortoiseSVN のコミット画面の変化
| 設定前 | 設定後 |
![]() |
![]() |
Subclipse のコミット画面の変化
| 設定前 | 設定後 |
![]() |
![]() |
TrackBack ping me at
http://www.in-vitro.jp/blog/index.cgi/Subversion/20070525_01.trackback
writeback message: Ready to post a comment.

![[TortoiseSVN設定前]](/blog/entries/Subversion/20070525_01/tortoisesvn_01.png)
![[TortoiseSVN設定後]](/blog/entries/Subversion/20070525_01/tortoisesvn_02.png)
![[Subclipse設定前]](/blog/entries/Subversion/20070525_01/subclipse_01.png)
![[Subclipse設定後]](/blog/entries/Subversion/20070525_01/subclipse_02.png)