チケットとソースコードを連携せよ!

Tracの最大の利点はSubversionとの連携にありさて、最終回の今回はTracのチケットとソースコードの連携を実際に試していく。コードを書く開発者から見た場合、Tracの最大の利点は普段使い慣れたSubversionから、Tracを使うことができる点にある。開発者は自分の環境に新たなツールを

masuidrive

2007年12月27日 20:00

Tracの最大の利点はSubversionとの連携にあり

さて、最終回の今回はTracのチケットとソースコードの連携を実際に試していく。

コードを書く開発者から見た場合、Tracの最大の利点は普段使い慣れたSubversionから、Tracを使うことができる点にある。開発者は自分の環境に新たなツールをインストールすることなく、Tracへ情報を送ることができる。

Tracの操作は通常Webから行うが、すべての操作をコマンドラインからでもできる。この機能とSubversionへコミット時に自動的に コマンドを呼び出すフックという機能を組み合わせることで、開発者がリポジトリへコミットするとTracを操作するという処理を自動化できるのである。

TracとSubversionの連携
TracとSubversionの連携

Subversionのフックは、Subversionサーバで設定する。リポジトリディレクトリの下にあるhooksディレクトリにファイル を設置することで、リポジトリへの動作に対してそのコマンドが呼ばれる。デフォルトで置いてある*.tmplというファイル群はサンプルのファイルであ る。

コミット後に呼ばれるのは「post-commit」である。「hooks/post-commit」という実行可能ファイルを置いておくと、 コミット後にこのコマンドが呼ばれることになる。post-commitには、第一引数にリポジトリのパス、第二引数にコミット後のリビジョン番号が入っ ている。

Subversionへコミットするときに書き込むコメントやコミットメッセージに書かれたコマンドを元に、Tracを操作するコマンドは「trac-post-commit-hook」といい、Tracの公式リポジトリ(http://trac.edgewall.org/browser/trunk/contrib/trac-post-commit-hook)で配布されている。

このコマンドがサポートしているチケット操作コマンドは、コミット内容とチケットを関連づけるreferencesと、チケットを閉じる closeである。コマンドの書式は、「コマンド名 チケット番号」となる。前後を()でくくったり、半角空白が開いていれば、文の途中でも使うことができる。

コマンド名は複数の書き方ができ、関連付けるコマンドはreferences、refs、addresses、re、seeのいずれかで指定す る。筆者の場合はよく「refs」を使っている。また、チケットを閉じるコマンドはclose、closed、closes、fix、fixed、 fixesのいずれかで指定する。こちらは筆者の場合「fixed」を使っている。

チケット番号の指定には、「#チケット番号」か「ticket:チケット番号」という書式を用いる。例えばチケット1番を指定する場合には、「#1」か「ticket:1」のようになる。

同時に複数のチケットを指定したい場合には「,(カンマ)」やand、&といった文字で区切って指定する。例えば、コミットするソースがチケット5番と7番に関係する場合、コミットメッセージに「refs #5, #7」と書く。

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30