Subversionを使って開発しているソースコードを管理しているプロジェクトは多数ある。会社でも利用されている方が多いだろう。ソースコードをただコミットしておくだけというのが一段階目、次がリビジョンを比較したり、ソースコードの変化を追うようになる。そして次は必要な変化を探すようになる。

3dsearch22.png

ソースを取り込んでインデックスを作成する

 

どこからソースコードが変化したのか、前に見たコメントはどこにあるのか…そんな情報を知るには検索するのがベストだろう。

今回紹介するオープンソース・ソフトウェアはSupoSE、Subversion用リポジトリ検索エンジンだ。

SupoSEはJava製のソフトウェアで、Windows向けにはコマンドファイルが用意されている。まずインデックスの作成が必要で、リポジトリのURLを指定して行う。これは各リビジョンの各ソースコードに対して行われるので若干時間のかかる処理になる。

3dsearch23.png

検索結果例

 

インデックスが終われば後はクエリー文字列を渡して検索できる。マッチしたファイルとリビジョンが一覧になるので、どのリビジョンから出てきた関数なのかなどがすぐに分かるようになる。

インデックスは複数作成でき、それぞれ指定すれば効率的な検索が可能だ。また、逆に複数のリポジトリをまとめて登録してしまうこともできるので社内のプロジェクト全体を統合することもできる。ただコミットとアップデートをするだけでなく、そこに登録されているコードやコメントをもっと活用していこう。

現在、SupoSEのデータをTomcatで使えるようにしたり、SOAPやRESTのインタフェースを開発するサブプロジェクトも行われている。今後が楽しみなプロジェクトだ。

 

**SupoSE - 概要 - Redmine

 **
http://www.supose.org/projects/show/supose