WebDAV+Subversionが落ち着いたので、今度はブラウザで簡単に履歴が追えるようにWebSVNを入れてみることにしました。
公式サイトは↓
なお、このソフトはPHPで動作するため、これを動作させるサーバーにはphpのインストール先に行ってください。
(Gentooでのインストール方法はこちら。RedHat系でソースから入れるならこちら)
次はSubversionでローカルにエクスポートしたWebSVNの実行ファイル一式をapacheのドキュメントルートに展開→展開されたファイルのオーナーをapacheの実行ユーザーにchown。
(今回はSubversion関連の専用鯖でSafemodeも切っていたので、面倒なことにならないようにこうしましたが、Safemodeが有効だったりする場合は各自の環境に合わせてやってください。)
で、次にWebSVNの設定の書き換え。
ここら辺は下記のサイトを参考にさせて頂きました。
あっ、「$config->setInputEncoding」の設定変えるの忘れてた(苦笑)
なお、ここの値は「/etc/php/apache2-php4/php.ini」に
iconv.input_encoding = EUC-JPと書いておけば特に変更しなくても動きます。
iconv.internal_encoding = EUC-JP
iconv.output_encoding = EUC-JP
でも、まだコメントが「?\134」とか言う感じで文字化けしてますし、Shift-JISでコミットされたソースもShift-JISのまま表示されてしまいます。
特に前者は「LANG=C」環境で出力が日本語なのが問題のような感じだったので
まず、
mkdir /usr/local/bin/websvnディレクトリを作成して、そこにシェルスクリプトで以下のようなシェルスクリプトを作成します
#!/bin/bash
export LANG=japanese
#export TTYPE=euc
/usr/bin/svnlook "$@"
#!/bin/bash
/usr/bin/svn "$@" | nkf -e
・・・って書いてて気がついたけどsvnの出力ってバイナリーもあったような( ̄∇ ̄;
問題になるまで考えないようにしよう・・・(苦笑)
あと、
include/command.inc 中の htmlentities を htmlspecialchars 置き換えればOK.
って、あんまり文字化け関連のドキュメントが無かったのでソース追っての作業で忙しい中、半日ぐらいかけちゃいましたが(苦笑)<スケジュールどうやって帳尻合わせようかなぁ・・・
Posted by Takuchan at 2004年12月23日 00:22 | トラックバック(0)