The jonki

呼ばれて飛び出てじょじょじょじょーんき

SubversionとApache

SubversionのインストールからApacheサーバ上でリポジトリを確認

mod_dav_svnインスコsubversionもこれでたぶん入る。

# yum install mod_dav_svn


svn用のリポジトリを作る。作ったディレクトリはapacheユーザownにしないと403とかくらう。

# mkdir /var/www/svn
# cd /var/www/svn
# svnadmin create unk
# chown -R apache:apache /var/www/svn


mod_dav_svnを入れたことによりapachesvn用の設定ファイルができている筈なので編集。最後の部分のコメントアウトされてるところを利用するのが楽。
とりあえず動作確認もこめてBASIC認証など抜きで。

# vim /etc/httpd/conf.d/subversion.conf 
<Location /svn>
   DAV svn
   SVNParentPath /var/www/svn
   SVNListParentPath on 
#
#   # Limit write permission to list of valid users.
#   <LimitExcept GET PROPFIND OPTIONS REPORT>
#      # Require SSL connection for password protection.
#      # SSLRequireSSL
#
#      AuthType Basic
#      AuthName "Authorization Realm"
#      AuthUserFile /path/to/passwdfile
#      Require valid-user
#   </LimitExcept>
</Location>


apacheの設定ファイルを編集したのでhttpdの再起動を忘れずに。

 # /etc/init.d/httpd restart

これでhttp://hogehoge.com/svnにアクセスできたら勝ち組。できなかったら/var/log/httpd/error_logを見てがんばる。

BASIC認証をかける。

BASIC認証のためのパスワードを作成

# htpasswd -c /etc/httpd/dav_svn.passwd svn


さっきの/etc/httpd/conf.d/subversion.confの以下をコメントアウトし、パスワードを設定したファイルをAuthUserFileで指定すればOK。

      AuthType Basic
      AuthName "Authorization Realm"
      AuthUserFile /etc/httpd/dav_svn.passwd
      Require valid-user

おまけ

こんな感じでチェックアウト。まぁhttpである必要もないが。

$ svn co http://hogehoge.com/svn/