Trac(BTS+Wiki+SVN)を試してみる [後編]

先週末から公私共にいろいろとあって、だいぶ間があいてしまいましたが、前回の続きです。
使ってみての感想ですが、これは使えるなという印象を持ちました。
・日本語に関しては、Wiki,Subversionリポジトリビューア,Ticket管理ともに問題なし
 (ただし、Suversionに格納しているソースがUTF-8以外の場合には設定が必要)
・翻訳版に置き換えることで、メニューやヘルプも日本語化可能
・Wikiの書式がシンプルで表現力は最低限
・動作は軽快(mod_pythonは必須)
・ヘルプが良くできていて、使い始めが簡単
・RSSやiCalendar形式で他のツールと連携可能

職場で開発中システムの管理に使い始めていますが、評判も上々です。以前は、PukiWikiBugTrackプラグインを使っていたのですが、無理やりWikiページの1つとして収めている感じがしていました。それに比べて、Tracは、WikiとBTSの機能がある程度独立した上で、それらの更新情報をまとめて一覧表示したり、"ticket:1","report:1","changeset:1"などのTracLink形式でそれらの間をリンクすることができるので、使い勝手は断然上です。

Wikiのトップ画面
標準のWiki書式はシンプルだが、Pythonで関数を記述することで拡張可能。
Wikiの編集画面
ticket:1,changeset:1などと記述すると、チケットやリポジトリへのリンクとなる。
タイムライン画面
Wiki,SVN,Ticketの変更履歴がまとめて表示される。RSS形式で出力可能。
ロードマップ画面
割り当てられたチケットの完遂率がグラフ表示される。iCalendar形式で出力可能。
Subversionリポジトリ
日本語のコミット時コメント表示も問題なし。WebSVNとほぼ同じ。
リポジトリ変更差分表示
なかなか見やすい。新旧を左右に分けて表示することも可能。
進捗状況のレポート
ブラウザ上からSQLクエリーをカスタマイズして、表示項目を変更することが可能。標準で用意されているレポートはこの8つ。
バグトラッキング画面
チケットごとの進捗状況や担当者を確認できる。チケットには、エラー画面を添付したり、掲示板のようにコメントを付けることが可能。

以下に日本語化や管理者権限の設定方法を書きます。

1.メニューやヘルプの日本語化
(1)翻訳ファイルをダウンロード

(2)解凍と展開
$ unzip trac-0.8.1-ja-1.zip
$ cd trac-0.8.1-ja-1
$ su
# mv templates/* /usr/share/trac/templates/
# mv wiki-default/* /usr/share/trac/wiki-default/
※これ以降に作成したプロジェクトから日本語になります。"trac-admin yourenvdir initenv"でプロジェクトを作成してください。

2.管理者権限を設定する
(1)パスワード設定
# htpasswd2 -c /var/trac/.htpasswd hoge
New password:
Re-type new password:
Adding password for user hoge
(2)Apacheの認証設定
Apacheの設定ファイルに下記を追加
/etc/apache2/sites-enabled/000-default(Debian Sargeの場合)
<LocationMatch "/cgi-bin/trac.cgi/login">
    AuthType Basic
    AuthName "trac"
    AuthUserFile /var/trac/.htpasswd
    Require valid-user
</LocationMatch>
(3)作成したユーザに管理者権限割り当て
# trac-admin /var/trac/sampleproject permission add hoge TRAC_ADMIN
3.UTF-8以外のソースコードに対応する
(1)JapaneseCodecsのインストール
# apt-get install python2.3-japanese-codecs
(2)trac.iniの編集
/var/trac/sampleproject/conf/trac.ini の設定を変更(Shift_JISの場合)
[trac]
default_charset = japanese.shift_jis

Tracはファイル構成もシンプル、ClearSilverというテンプレートエンジンを使っていてWebアプリケーションとしても良くできているな、と感じました。欲を言うと、テンプレートを丸ごと置換えしなくて済むように言語切り替え機能が欲しい、ユーザ管理を基本認証ではなくDBで管理して欲しいという気はします。
以上、とりとめもなく書きましたが、そのうちBlogエントリではなく、Plone上のコンテンツとして纏めます。



Leave a comment


:

:

:

:

このエントリーのはてなブックマーク (-)