svnリポジトリ作成してapacheで公開するまで

svnリポジトリの作成

# mkdir /var/svn/
# mkdir /var/svn/conf
# cd /var/svn/
# svnadmin create project1

ユーザーの設定

# cd /var/svn/conf
# ファイルがないときは-Cオプションで作成。パスワードを聞かれるので入力
# htpasswd -C svnpasswd user1
New password: 
Re-type new password: 
# 2回目からは-Cオプション無しで実行
# htpasswd svnpasswd user1
New password: 
Re-type new password: 

httpd.confの設定追加

# for svn
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so

<Location /svn>
    DAV svn
    # プロジェクトリポジトリディレクトリのひとつ上の階層。
    SVNParentPath "/var/svn"

    # auth skip

    AuthType Basic
    AuthName "Subversion repositories"
    AuthUserFile "/var/svn/conf/svnpasswd"
    <LimitExcept GET PROPFIND OPTIONS REPORT>
        Require valid-user
    </LimitExcept>
</Location>2

Apacheの再起動

# service httpd stop
# service httpd start

ブラウザおよびSVNクライアントでアクセス

http://server.host/svn/project1

注意点はSVNParentPath。/svn/にアクセスしても403になってしまうので ブラウザやクライアントからはちゃんとプロジェクトディレクトリまで指定してアクセスすること。 設定ファイル周りはsvnserveの設定で作ろうとしていたのでちょっとはまった。