2009年06月24日

Subversion導入メモ(鯖側)

今更ながらSubversionをインストール

[鯖側]

方針

  • OS:FreeBSD
  • クライアントからはssh経由で接続するため、svnserveは起動しない
  • Webからリポジトリ参照可能にする
  1. subversionインストール
    # cd /usr/ports/devel/subversion
    # make
    # make install
    

    設定は以下の通り
    (apacheをリビルドしないようにDB4なし(FSFS?))
      x x [X] MOD_DAV_SVN       mod_dav_svn module for Apache 2.X        x x
      x x [X] APACHE2_APR       Use APR from Apache 2.X                  x x
      x x [X] NEON              WebDAV/Delta-V repo access module (neon) x x
      x x [ ] SERF              WebDAV/Delta-V repo access module (serf) x x
      x x [ ] SASL              SASL2 authorization support              x x
      x x [ ] BDB               db4 repository backend                   x x
      x x [ ] ASVN              Build and install Archive SVN (asvn)     x x
      x x [ ] MAINTAINER_DEBUG  Build debug version                      x x
      x x [ ] SVNSERVE_WRAPPER  Enable svnserve wrapper                  x x
      x x [ ] BOOK              Install the Subversion Book
    
    configやり直しは、 make config

  2. リポジトリ作成
    まー、適当に
    # cd /home/svn
    # svnadmin create repos
    
    ssh経由でアクセスするため、ファイル、ディレクトリのパーミッションは ログインアカウントでアクセスできるように適度設定
    svnクライアントからのアクセス(ssh経由)だけならこれでおわり

  3. apacheの設定を変更する(httpd.conf)
    webからリポジトリを参照できるように設定
    cvswebと違い、subversionは標準で付いてるみたい
    とりあえず、apacheをrestartすると、ワーニングが出るようになった
    [warn] module dav_module is already loaded, skipping
    
    これは、
    /usr/local/etc/apache22/httpd.conf の
    LoadModule dav_moduleが重複してるため
    ...
    LoadModule dav_module libexec/apache22/mod_dav.so <-----これと
    LoadModule status_module libexec/apache22/mod_status.so
    LoadModule autoindex_module libexec/apache22/mod_autoindex.so
    LoadModule asis_module libexec/apache22/mod_asis.so
    ...
    LoadModule php5_module        libexec/apache22/libphp5.so
    #LoadModule dav_module         libexec/apache22/mod_dav.so <----これが重複(コメントアウトする)
    LoadModule dav_svn_module     libexec/apache22/mod_dav_svn.so
    LoadModule authz_svn_module   libexec/apache22/mod_authz_svn.so
    <IfModule !mpm_netware_module>
    
  4. apacheの設定を変更する(svn.conf)
    参照設定用に以下のファイルを作成した
    /usr/local/etc/apache22/Includes/svn.conf
    <Location /svn>
      <IfModule mod_dav.c>
        Dav svn
        SVNParentPath /home/svn
        SVNListParentPath on
      </IfModule>
      <LimitExcept GET PROPFIND OPTIONS REPORT>
        Deny from all
      </LimitExcept>
    </Location>
    
  5. /usr/local/etc/rc.d/apache22 restart
    ブラウザより http://[mydomain]/svn/ でアクセス
    なんだかCvsWebよりショボイ。。。
    これで鯖側終了


posted by sanahi at 23:00| 滋賀 ☔| Comment(0) | TrackBack(0) | Develop | 更新情報をチェックする
この記事へのコメント
コメントを書く
コチラをクリックしてください

この記事へのトラックバック
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。