GOL @Wiki

SubversionとTracでプロジェクト管理しよ!

最終更新:

divadiva

- view
管理者のみ編集可
CVSの後継であるバージョン管理システムSubversionと、トラッキングシステムTracを組み合わせて、プロジェクト管理をしましょう。

~ 工事中 ~

Trac(on Apache2)とSubversionを連携させるための設定

連携とは言いつつも、基本的にはそれぞれ別個で動いていて、TracからSubversionを参照する、という理解の方が混乱がなくていいと思います。つまり、まずはSubversionを単体としてしっかりマネージメントし、それにWikiとチケットを管理しているTracからアクセスする、というイメージ。

Trac on Apache2側

  • CGIによるWeb提供
 ScriptAlias /sipdproj /opt/csw/share/trac/cgi-bin/trac.cgi
 <Location "/sipdproj">
   SetEnv TRAC_ENV "/var/trac/projects/sipdproj"
 </Location>
ここは通常のCGIによるWeb提供と同じ設定なので、問題ないと思います。ユーザは、
 http://HOST/sipdproj
にアクセスすると、Tracのトップページを表示することができます。
TRAC_ENVで指定するディレクトリは、プロジェクトファイルの保存先です。プロジェクトファイルは下記コマンドで生成しておく必要があります。
 # trac-admin <TRAC_ENVで指定するディレクトリ> initenv

  • BASIC認証を利用したユーザ認証
 <LocationMatch "/sipdproj/login">
   AuthType Basic
   AuthName "Trac"
   AuthUserFile <パスワードファイルの絶対パス>
   Require valid-user
 </LocationMatch>
TracのWebにある「Login」ボタンを押した際にエラーが出る場合は、上記設定、特にLocationMatchにおけるパス表現が間違っているか、あるいは、パスワードファイルを作っていない or 指定先間違い、の場合がほとんどです。
ここでは「/sipdproj/login」と記述していますが、URLの異なる複数のプロジェクトを運営していてパスワードファイルを共通の設定にしたい場合は、うまくマッチするように正規表現する必要があります。Webの設定にもよりますが、ここの例で言うと、「/sipdproj」の部分が変わってもマッチするように設定します(最後はloginでおわるので固定)。
パスワードファイルは、Apacheのhtpasswdコマンドで生成したファイルを使います。

  • Subversionリポジトリの指定
<プロジェクトディレクトリ>/conf/trac.ini に、様々な設定を記述します。
[trac]のrepository_dirに、Subversionのリポジトリディレクトリのパスを記述します。ここが間違っていると、TracのWebページの「Browse Source」タブをクリックしても、何も表示されません。

Subversionのコマンド

  • リビジョン番号などの情報を調べる
UCI-APPSというプロジェクト全体の情報を調べる場合
 # svn info http://111.222.333.444/REPOSITORY/UCI-APPS
 Path: UCI-APPS
 URL: http://111.222.333.444/REPOSITORY/UCI-APPS
 Repository Root: http://111.222.333.444/REPOSITORY
 Repository UUID: d4d212df-f822-0410-8a03-c58f19b5f6eb
 Revision: 9
 Node Kind: directory
 Last Changed Author: golden
 Last Changed Rev: 9
 Last Changed Date: 2006-11-29 14:54:31 +0900 (Wed, 29 Nov 2006)