subversion on apache とりあえず動く設定

仕事でsubversion使うかもしれないので、勉強かねてhttpでsvnしてみた。最低限の設定なので認証などはつけてない。

mod_dav_svnが必要なのでyum installする。

 $ sudo yum install mod_dav_svn.x86_64

svn関連のapache設定。CentOSの流儀に従って /etc/conf.d/svn.conf とした。

    LoadModule dav_svn_module modules/mod_dav_svn.so
    DAV svn
    SVNParentPath /var/svn
    SVNListParentPath on

リポジトリが1個だけならくSVNPathを使えばよい。
SVNParentPathを使うと、配下のディレクトリにある複数のリポジトリを対象としてくれるので設定ファイルを毎度書き換えなくて良い利点がある。

複数のリポジトリで構成すると/var/svn以下は以下のようになる。

  /var/svn/
    + repos1/
       + trunk/
       + branches/
       + tags/
    + repos2/
       + (略)

ここで一つ不便を感じる点として、ブラウザでhttp://xxx/svn/にアクセスするとSVNモジュールがエラーページを吐く。GETリクエストを解釈できないためであるが、URI的にはリポジトリのlistを出力してほしいところだ。
そこで、SVNListParentPath on だ。これだけ。