Subversionの構築手順を記述する。
①subversionパッケージをインストールする
debian:~# apt-get install apache2(事前にインストールされてない場合)
debian:~# apt-get install subversion
②リポジトリディレクトリを作成する。ここで/var/svnとする
debian:~# svnadmin create /var/svn
作成したら、svnディレクトリに以下のファイルやディレクトリが生成される。
debian:/var/svn# ls README.txt conf db format hooks locks
③/var/svnに対して、権限設定をする
debian:/var# chown -R www-data:www-data svn
debian:/var# chmod -R 777 svn
debian:/var# ls -l
......
drwxrwxrwx 6 www-data www-data 4096 2011-02-25 18:14 svn
......
④Apache subversion用のモジュールをインストール
debian:~# apt-get install libapache2-svn
libapache2-svnをインストールしたら、/etc/apache2/mods-availableの下に下記二つのモジュールファイルが追加される
/etc/apache2/mods-available/dav_svn.conf
/etc/apache2/mods-available/dav_svn.load
後ほどdav_svn.confに対して編集を行う。
⑤Apacheのモジュール(/dav_svn)を構成
/etc/apache2/mods-available/dav_svn.confを下記のように編集する。初期状態は全部コメントされているので
必要な行にコメント記号を外すだけでいい。
< Location /svn>
# Uncomment this to enable the repository
DAV svn
# Set this to the path to your repository
SVNPath /var/svn
# Basic Authentication......
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd ⇒ dav_svn.passwdは後でhtpasswdコマンドで作成する
Require valid-user
< /Location>
⑥認証情報を保存するファイル/etc/apache2/dav_svn.passwdを作成し、SVNサーバーを利用するユーザー(user1)の
パスワードをセットする
debian:~# htpasswd -c /etc/apache2/dav_svn.passwd user1
New password:
Re-type new password:
Adding password for user user1
⑦Apacheサービスを再起動
debian:~# /etc/init.d/apache2 restart
Restarting web server: apache2 ... waiting .
再起動したら、設定が反映され、user1の情報でhttp://サーバー名/svnにアクセスできるはず。
※追記
subversion単体で動かしたい場合は
上記①②③の作業を実施し、以下の作業を追加する必要があります。
④/var/svn/conf/svnserve.conf
/var/svn/conf/passwd
二つファイルを編集します。
svnserve.confで以下行のコメントを外す
anon-access = read 匿名ユーザーへ読み込み権限を与える
auth-access = write 認証されたユーザーへ書き込み権限を与える
password-db = passwd ユーザー情報を保存するファイル名を指定
passwdファイル下記のように書く
[users]
testuser = testpassword
最後に
⑤#svnserve -d -r /var/svnを実行する。
svn://サーバー名の形でアクセスできるようになります。
subversionサーバ上に書き込む時にユーザー名とパスワードの入力が求められるので、testuserの情報を入力すればいいです。