Trac Lightning 2.4系からTrac Lightning 3.0.8にアップグレード
Trac、Trac Lightningは非常に重宝しています。ホント感謝です!
そんなTrac Lightning を 2.4系からTrac Lightning 3.0系にアップグレードのテストをした際にSubversionでコミットするとエラーメッセージが表示される(でも、コミット出来てる)というのとrefsなどのコマンドが動作しない現象が発生したんですが、その解決策をSourceForge で tecnos_kaneda様に教えていただきました。超感謝です。そこで自宅のTracもバージョンアップしてみましたので画面を貼りまくります。
チケット #24143: Trac Lightning 2.x から移行したプロジェクトのpost-commit-hookエラーについて - Trac Lightning - SourceForge.JP
ちなみに、自宅のTracでも事前にこのエラーが発生するかどうかを確認し忘れました。ただ、対応手順から考えるとたぶん2.x系から3.0系にアップグレードする際には発生するんじゃないかなぁと思います。
Trac Lightning のSourceForge でも「TracLightning2.xをお使いの場合で、特に不満がない場合はアップグレードをお勧めしません」って書いてありますが、チケットのコメントを修正する機能とタイムラインのソート機能などはかなり便利なのでどうしてもアップグレードしたかったので実施してみました。自宅のTracはTrac Lightning 2.xから使い始めましたが、会社のTrac LightningはAll-In-One Tracからの移行しているので、その辺りも記憶を頼りに追記してみます。
ということでこんな感じで実施。プロジェクト名は Home 、 インストールフォルダは D:\TracLight です。
1.スタート メニューから「プログラム」-「Trac」-「バックアップ」をクリックして、現行のTracのバックアップをします。
バックアップが完了したら、インストールフォルダ配下にbackupフォルダがありますので、デスクトップにコピーします。
ちなみに、All-In-One TracからTrac Lightningに移行している場合は、認証がBASIC認証になっていると思います。このバックアップではBASIC認証用のファイルがバックアップされないと思いますので、認証用のファイル(htpasswd)は手動で現行のTracフォルダ(デフォルトはC:\TracLight)配下のprojectsからデスクトップのbackupフォルダにコピーします。
2.「コントロールパネル」の「プログラムの追加と削除」から「Trac Lightning」を選択してアンインストールします。
3.インストール時に指定した現行のTracのインストールフォルダを削除します。(デフォルトはC:\TracLight)
4.Trac Lightning Wiki - SourceForge.JPからTrac Lightningの3.0系最新版を感謝しつつダウンロードします。インストールフォルダは2.x系と同じにします。(デフォルトはC:\TracLight)
6.インストールが完了すると再起動の確認画面が表示されますので、再起動を行います。
7.デスクトップに待避したbackupフォルダから「svnauthz」「trac.htdigest」をTracのインストールフォルダ配下のprojectsに上書きコピーします。
All-In-One TracからTrac Lightningに移行している場合は、「htpasswd」ファイルも一緒にコピーします。
8.デスクトップに待避したbackup\svnフォルダから移行したいプロジェクトのフォルダをTracのインストールフォルダ配下のprojects\svnフォルダにコピーします。この時にSampleProjectは移行しないようにして下さい。
複数プロジェクトがある場合は、それらのプロジェクトのフォルダもコピーします。
9.デスクトップに待避したbackup\tracフォルダから移行したいプロジェクトのフォルダをTracのインストールフォルダ配下のprojects\tracフォルダにコピーします。この時にSampleProjectは移行しないようにして下さい。
複数プロジェクトがある場合は、それらのプロジェクトのフォルダもコピーします。
10.スタート メニューから「プログラム」-「Trac」-「コマンドプロンプト」をクリックします。
trac-admin.bat インストールフォルダ\projects\trac\プロジェクト名 upgrade と入力して、実行します。
複数プロジェクトがある場合は、すべてのプロジェクトで実行して下さい。
11.wikiもアップグレードするように表示されましたので、続けて以下のコマンドを入力します。
trac-admin.bat インストールフォルダ\projects\trac\プロジェクト名 wiki upgrade
複数プロジェクトがある場合は、すべてのプロジェクトで実行して下さい。
12.Tracのインストールフォルダ配下のprojects\svn\SampleProject\hooks以下の11個のファイルをすべてをTracのインストールフォルダ\projects\svn\プロジェクト名\hooks に上書きコピーをします。
複数プロジェクトがある場合は、全てのプロジェクトのフォルダにもコピーします。
13.手順12でコピーしたpost-commit.batを選択して右クリックの「編集」をクリックします。3行目の PROJECT= の後を SampleProject から該当プロジェクト名に修正して上書き保存します。今回はHomeに修正しています。
複数プロジェクトがある場合は、すべてのプロジェクトで実行して下さい。
14.Tracのインストールフォルダ\projects\trac\各プロジェクト\confにあるtrac.iniファイルをUTF-8に対応したエディタで開きます。
※Windowsのメモ帳は対応していません。
15.TracLightning2.xからTracLightning3.0.xへのアップグレードの注意の手順に沿ってticket-customの日付フィールドを上書き修正をして、保存します。
複数プロジェクトがある場合は、すべてのプロジェクトで実行して下さい。
なお、All-In-One TracからTrac Lightningに移行している場合は、All In One Tracからの移行の「Apacheの設定(httpd.conf)をBasic認証を利用するように変更します。」以下にあるようにD:\TracLight\CollabNetSVN\httpd\confにあるhttpd.confファイルをDigest認証からBasic認証にするように変更します。
以上でバージョンアップ完了です。Trac Lightningを起動して下さい。
16.ログインして、以前の情報が引き継げているか確認して下さい。
17.SubversionのSVNコミットが問題なく行きました。refsなども正しく動作しています。
SampleProjectを移行したい場合は、プロジェクトの移行後に他のプロジェクトからhooksフォルダ以下をコピーして下さい。
といった感じで、おそらく上手くバージョンアップできたようです。