[SVN]さくらのVPSにSVNリポジトリを立てる
参考:
Subversion環境をCentOSで構築 - 無理なものは無理
10分で作る、Subversionレポジトリ (CentOS 版) - ishikawa84g's blog
mod_dav_svnのインストール
必要なパッケージがインストールされているか確認
yum list installed | grep subversion yum list installed | grep mod_dav_svn
subversionはインストール済みだったが、mod_dav_svnはなかった。
インストールする。
yum install mod_dav_svn
SVNリポジトリの作成
テスト用にsandboxというリポジトリを作る。trunkとかbranchはひとまず無視。
mkdir /var/www/svn svnadmin create /var/www/svn/sandbox chown -R apache:apache /var/www/svn
Apache の設定(Basic 認証)
BASIC認証用のユーザ、パスワード設定
htpasswdコマンドを使って、ユーザ、パスワードを設定する
htpasswd -c /etc/httpd/.htpasswd ユーザ名
実行後、パスワードが聞かれるので入力。
パスワードはデフォルトではcrypt関数で暗号化されて保存される。(Cのcrypt関数のこと?)
- cは新規ファイル作成という意味なので、複数ユーザを追加する際は、-cは除く。
-cが付いていると、既存のファイルがあっても上書きされてしまうので注意。
apacheとSVNの連携
mod_dav_svnのインストールにより、以下のファイルが作成されている。これを編集する。
/etc/httpd/conf.d/subversion.conf
・Locationタグをコメントアウト
・Locationタグのパスを、アクセスしたいURLにする(reposをsvnに変更した)
・AuthUserFileのパスをさっき作ったパスに変更
<Location /svn> DAV svn SVNParentPath /var/www/svn # # 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 /etc/httpd/.htpasswd Require valid-user # </LimitExcept> </Location>
httpdを再起動すれば終わり。
今回の例だと、http://(IPアドレス)/svn/sandboxにアクセスすればリポジトリの中身が見える。