#freeze
''目次''
#contents
~
----
*目的 [#u20d6a1e]
*準備 [#p80d2c8e]
Apacheは[[2.2.21>Apache 2.2.21]]をインストール。~
*インストール [#ba46a092]
+''ソースの取得''
# wget -P /usr/local/src http://ftp.riken.jp/net/apache/subversion/subversion-1.7.1.tar.gz
~
+''ソースの解凍''
# cd /usr/local/src
# tar zxvf subversion-1.7.1.tar.gz
~
+''depsの取得''~
1.7より以前は''subversion-deps-1.*.*.tar.gz''が存在したが、1.7以降はsubversionのソースに含まれる''get-deps.sh''により取得する。
# cd /usr/local/src/subversion-1.7.1
# ./get-deps.sh
~
APRとAPR-utilのバージョンは、Apache-2.2.21に含まれるものとget-deps.shで取得されるものは一緒~
APR 1.4.5
APR-util 1.3.12
get-deps.shで取得されるものは、
apr-1.4.5
apr-util-1.3.12
neon-0.29.6
serf-0.7.2
zlib-1.2.5
sqlite-amalgamation-3070603
''yum''でインストール済みのzlib(1.2.3)とバージョンが違うがそのまま進む。~
問題があったら後から考える。
get-deps.shの最後に、
If you require mod_dav_svn, the recommended version of httpd is:
http://archive.apache.org/dist/httpd/httpd-2.2.19.tar.bz2
との文言が表示されるが、今は気にせず進む。~
~
+''コンパイル設定''~
[[configureのヘルプ>subversion-1.7.1のconfigureヘルプ]]
# cd /usr/local/src/subversion-1.7.1
# ./configure \
> --prefix=/usr/local/subversion-1.7.1 \
> --without-berkeley-db
~
+''インストール''
# make
# make install
~
+''シンボリックリンクの作成''
# ln -s /usr/local/subversion-1.7.1 /usr/local/subversion
**Apacheへの埋め込み [#ic8c8f48]
-''リポジトリ用のディレクトリを作成''
# mkdir /home/svn
-''httpd-dav.confの設定''
# mv /usr/local/apache2/conf/extra/httpd-dav.conf /usr/local/apache2/conf/extra/httpd-dav.conf.org ← Defaultを残して
# vi /usr/local/apache2/conf/extra/httpd-dav.conf ← 新規作成
#以下を追加
<Location "/svn">
DAV svn
SVNParentPath /home/svn
SVNListParentPath On
</Location>
-''httpd.confの設定''~
DAV用設定ファイルの有効化
# vi /usr/local/apache2/conf/httpd.conf
DAV設定ファイルのinclude
# Distributed authoring and versioning (WebDAV)
#Include conf/extra/httpd-dav.conf
↓
Include conf/extra/httpd-dav.conf ← コメント外す
確認
# /usr/local/apache2/bin/apachectl configtest
Syntax OK
Httpd再起動
# /etc/rc.d/init.d/httpd restart
httpd を停止中: [ OK ]
httpd を起動中: [ OK ]
*動作確認 [#ff39c4e3]
''リポジトリの作成''
# /usr/local/subversion/bin/svnadmin create /home/svn/test
# chown -R apache:apache /home/svn/test
http,httpsでそれぞれ[http(s)://XXX.XXX.XXX.XXX/svn/test]へアクセスし「Revision 0:」と表示されればOK。~
*リポジトリのHTTPへの公開 [#s5024de9]
+''リポジトリ作成''
# svnadmin create /home/svn/hoge-project
~
+''所有権の変更''
# chown -R apache:apache /home/svn/hoge-project
~
+''Apacheの設定(httpd.confの編集)''
# vi /usr/local/apache2/conf/httpd.conf
Include conf/extra/httpd-svn.conf ← 追記
~
+''Apacheの設定(httpd-svn.confの作成)''~
認証用ファイル ''/usr/local/apache2/conf/users'' は別途作成しておく。
# vi /usr/local/apache2/conf/extra/httpd-svn.conf ← 新規作成
<Location "/svn/hoge-project">
DAV svn
SVNPath /home/svn/hoge-project
Require valid-user
AuthType Basic
AuthName "Subversion repository"
AuthUserFile /usr/local/apache2/conf/users
</Location>
~