こちらの紹介記事
グーグルのバグ予測アルゴリズムを実装したツール「bugspots」、オープンソースで公開
を参考に、Windows + cygwin + svn で bugspots を使ってみました。
cygwin の準備
bugspots を使用するには、git, ruby が必要になるのでインストールしておきます。また、bugspots のインストールに gem が必要になります。
このままでは、gem を使えないので以下から rubygems-*.*.*.tgz をダウンロードします。
http://rubyforge.org/frs/?group_id=126
適当な場所に解凍し、setup.rb を実行します。
$ tar xvzf rubygems-1.8.15.tgz $ cd rubygems-1.8.15 $ ruby setup.rb
今回は、svn のリポジトリに対して bugspots を使うので git-svn もインストールしておきます。
bugspots のインストール
bugspots のダウンロードページから tar.gz ファイルをダウンロードします。解凍して、gem install を実行します。
$ tar xvzf igrigorik-bugspots-v0.1.0-3-ga9debf9.tar.gz $ cd igrigorik-bugspots-a9debf9 $ gem install bugspots2012/03/06 : ダウンロードは不要でした。
gem install を実行します。
$ gem install bugspots
これで、bugspots を使う準備が整いました。
bugspots を実行する
git を使っていれば、あとは$ git bugspots /path/to/repoとすればいいだけなのですが、svn に対して bugspots を使用する場合は、git svn clone をします。
あとは、clone したパスで bugspots を実行するだけです。
$ git svn clone /path/to/repo git-repo $ cd git-repo $ git bugspots ./
実際に使ってみて
まず最初に、個人的なプログラム群に使って見ました。Scanning ./ repo Found 0 bugfix commits, with 0 hotspots: Fixes: Hotspots:何も出ません。
bugspots は fixes や closed がついたコメントがなければ、なにも教えてくれません。
ちゃんと、コミットメッセージを書け。ということです。
ついで、会社のプロジェクトに対して実行してみたところ、
ちゃんとレポートが出力されました。
しかし、この情報をどのように活用したら良いのかイマイチ…
とりあえず、コードレビューをすべきファイルの指標にはなるのかなぁーと思いました。
bugspots-svn
"bugspots" でグーグル検索すると上の方に出てくるので、これを読んでいる過程で気づいた方もいるかもしれません。今回、git-svn で clone を作成して bugspots を適用しましたが、
bugspots-svn を使えば svn のリポジトリに対して直接適用できそうです。
spawn.h
最近、家でインストールしたときに spawn.h がなくてインストールに失敗しました。こちらハングアップの日々 - 2012/06/06を参考に posix-spawn をインストールしたところ、bugspots も正常にインストールできました。
2012/10/2 追記。
0 件のコメント:
コメントを投稿