2004-12-25

いよいよsubversion

とうとうsubversionを入れてみようと思う。なんにでも入れたいのです。subversion。

まずはPortsfileを読んでオプションなどを確認。
mod_dav_svnはvariantで対応らしい。pythonもvariantだけど、もうwebsvnなら何も無しで動きそうなのがわかってるので特に入れない。なんで、port install subversion +mod_dav_svnで行きそうかなぁ、てな塩梅ですな。

が、そうはうまくは行かないのでした。APXSが古いっぽいなどと言いつつ止まってしまった。
どうもインストール後に移動したせいで元のインストール先/opt/localに見に行ってしまっているらしい。どっかにインストール履歴を置いてるんやね。

で、/usr/localに移してたのをいったんもとに戻して、全部uninstallして、再度localに戻した。この点については一個前のポストのportのインストール先に反映させておく。

apache2を入れ直した所で再度port install subversion +mod_dav_svnとしてみる。
portsを入れ直したのでまた時間がかかるんやけど...今度はちゃんと入った。

リポジトリは/home/svnrootとした。/homeはosXでは使ってないので別ドライブを割り当てやすい。svnユーザはSystem Preference...で追加する。で、mkdir /homemkdir /home/svnrootchown -Rf svn:svn /home/svnrootてな具合でリポジトリ置き場を作成。 後はsvnユーザになってsvnadmin create --fs-type fsfs testみたいにして作る。

今度は設定。基本的にはFreeBSDの時と同じで良いんやけど、インストーラがあんまり何もしてないので全部自分でする必要がある。まずはLoadModuleの最後に以下の2行を追加。

LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so

で、svn用のLocationを追加。

# Location for subversion
<Location /svn>
DAV svn
SVNParentPath /home/svnroot
AuthType Basic
AuthName "Subversion repository"
AuthUserFile /home/svnroot/passwd

<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
</Location>

最後にpasswdファイルを作って終了。

cd /home/svnroot
htpasswd -c passwd [適当なユーザ名]

パスワードを2回聞いてくるので適当に同じパスワードを入れて終了。

教訓:portsとか使ったときは途中で設定を変えたり入った物を動かしたりしたらえらい事になるのでした。
まる。

0 件のコメント: