subversion on Ubuntu Server 9.04
参考にしたサイト
UbuntuへのApache + Subversionのインストール方法
http://d.hatena.ne.jp/u6k/20090514/1242279696
Redmine.JP | Subversionとの連携
http://redmine.jp/tech_note/subversion/
Subversion のインストール
apt-get を使うよう統一しているので、aptitude は使わず。
# sudo apt-get install subversion # sudo apt-get install libapache2-svn
終わったら apache2 を再起動。
# sudo /etc/init.d/apache2 restart
リポジトリの作成
/usr/local/var/svn/repos/ に作成。他の諸々も全て root で動かすというのであれば、/usr/local/var/ 以下ではなく /var/ 以下でいいかもしれない。平易かつ安全なサーバ運用のためにはディレクトリの命名規則が命。
終わったらきちんと作成できているかを確認。
とりあえず動かしたいのでリポジトリのディレクトリ以下を chmod 777。(tortoiseSVN から接続させるのにめんどくさくなったのもある)
# sudo mkdir -p /usr/local/var/svn/repos/ # sudo svnadmin create /usr/local/var/svn/repos/ # svn info file:///usr/local/var/svn/repos/ # sudo chmod -R 777 /usr/local/var/svn/repos/
apache2 - mod_dav_svn の設定
http: でアクセスできるように、dav_svn.conf の設定を変更する。
# sudo vi /etc/apache2/mods-enabled/dav_svn.conf
以下の行をコメント解除、変更する。
(とりあえず単一のリポジトリで運用。複数のリポジトリを扱いたい場合は SVNParentPath をコメント解除、変更する。データのインポート、コミット時の書き込み権限を要求する Basic 認証などもここで設定するが、今回はスルー)
<Location /svn/repos> DAV svn SVNPath /usr/local/var/svn/repos # Apatch2 上のリポジトリ以下のディレクトリへのアクセス時に # Basic 認証を有効にする #AuthType Basic #AuthName "Subversion Repository" #AuthUserFile /etc/apache2/dav_svn.passwd # 書き込み時に権限を要求する #<LimitExcept GET PROPFIND OPTIONS REPORT> # Require valid-user #</LimitExcept> </Location>
変更したらもう一回 apache2 を再起動。ブラウザから、http://[サーバ名]/svn/repos/ へアクセスできることを確認。諸々の Subversion クライアントから http 接続でインポート、チェックアウト、コミットなどが行えることを確認。
# sudo /etc/init.d/apache2 restart # svn info http://localhost/svn/repos/