Subversionサーバー構築(Ubunto14.04)
apache2のインストール
$ apt-get install apache2 apache2-utils
Subversionインストール
$ sudo apt-get install subversion subversion-tools libapache2-svn
- libapache2-svn:Apache2を利用して公開するためのパッケージ
レポジトリフォルダー
Apache2のdav_svn.confを編集する
$ sudo nano /etc/apache2/mods-enabled/dav_svn.conf ========================================== <Location /svn> DAV svn SVNParentPath /home/svn #Basic認証設定 AuthType Basic AuthName "Subversion Repository" AuthUserFile /etc/apache2/dav_svn.passwd Require valid-user </Location> ==========================================
- 基本コメント状態になっている部分をコメント解除する。
- Basic認証設定
認証ユーザ設定追加
htpasswdを使って設定
$ sudo htpasswd -c /etc/apache2/dav_svn.passwd user1
- 「-c」はファイル作成時使用するオプション
dav_svn.passwdファイルの中は行かのうように設定される。
user1:$apr1$YN3gOpeh$7Q0FPwTOXk16EQb77VRJB1
新しいレポジトリを作成する。
$ cd /home/svn/repo1 $ sudo svnadmin create repo1 $ svn info file:///home/svn/repo1 Path: repo1 URL: file:///home/svn/repo1 Relative URL: ^/ Repository Root: file:///var/lib/svn/repo1 Repository UUID: 1276eb0f-b7b0-4dbd-89d7-484a20fda198 Revision: 0 Node Kind: directory Last Changed Rev: 0 Last Changed Date: 2015-07-15 09:45:19 +0000 (Wed, 15 Jul 2015)
Subversionファイル郡のユーザーグループ設定
上記で作ったレポジトリ「repo1」は「root」ユーザで作成したため、Apache2の権限では制御出来ない。
Apache2は「www-data」ユーザで動いて居るため、「www-data」ユーザの権限を与える。
$ cd /home/svn $ sudo chown -R www-data:www-data repo1
apache2再起動
$ sudo /etc/init.d/apache2 restart
apache2からのチェック
$ svn info http://localhost/svn/repo1 Path: repo1 URL: http://localhost/svn/repo1 Relative URL: ^/ Repository Root: http://localhost/svn/repo1 Repository UUID: 2628261b-5946-4f20-b06a-8c7f90bb274a Revision: 0 Node Kind: directory Last Changed Rev: 0 Last Changed Date: 2015-07-15 10:25:47 +0000 (Wed, 15 Jul 2015)
CheckOut
$ svn checkout http://<domain or ip>/svb/repo1