#freeze
''目次''
#contents
~
----
*目的 [#lf25eadd]

*準備 [#h8eb8606]
-apache 2.2.8
-OpenSSL
-zlib
-expat
-neon~
HTTP and WebDAV client library
-subversion -- http://subversion.tigris.org/~
ソース:subversion-1.4.6.tar.gz

*インストール [#c7ebbd68]
1.ソースの取得
 # wget -P /usr/local/src http://subversion.tigris.org/downloads/subversion-1.4.6.tar.gz
>/usr/local/srcにsubversion-1.4.6.tar.gzを取得。

2.ソースの解凍
 # cd /usr/local/src
 # tar zxvf subversion-1.4.6.tar.gz
>/usr/local/srcにsubversion-1.4.6フォルダが作成される。

3.コンパイル設定
 # cd /usr/local/src/subversion-1.4.6
 # ./configure \
 > --prefix=/usr/local/subversion-1.4.6 \
 > --with-apxs=/usr/local/apache2/bin/apxs \
 > --with-swig=/usr/local/swig
 > --without-berkeley-db

> [[configureのヘルプ>subversionのconfigureヘルプ]]

-neonが無い場合,下記が表示される
 (省略)
 configure: checking neon library
 checking for neon-config... no
 
 An appropriate version of neon could not be found, so libsvn_ra_dav
 will not be built.  If you want to build libsvn_ra_dav, please either
 install neon 0.25.5 on this system
 
 or
 
 get neon 0.25.5 from:
     http://www.webdav.org/neon/neon-0.25.5.tar.gz
 unpack the archive using tar/gunzip and rename the resulting
 directory from ./neon-0.25.5/ to ./neon/
 
 no suitable neon found
 (省略)

-expatが無い場合,下記が表示される
 (省略)
 checking expat.h usability... no
 checking expat.h presence... no
 checking for expat.h... no
 checking for xml2-config... no
 configure: error: no XML parser was found: expat or libxml 2.x required
 configure failed for neon

4.インストール
 # make
 # make install
 # make swig-py
 # make install-swig-py

5.シンボリックリンクの作成
 # ln -s /usr/local/subversion-1.4.6 /usr/local/subversion

*Apacheへの埋め込み [#p464b8ef]
-''リポジトリ用のディレクトリを作成''
 # 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設定ファイルのリンク
 # 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

*動作確認 [#r62325c4]
''リポジトリの作成''
 # /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。~

*↓これ何だっけ?  (Trac用の設定?) [#reb68237]
+''Python用PATH?''
 # echo /usr/local/subversion/lib/svn-python > /usr/local/python/lib/python2.5/site-packages/subversion.pth
~
+''リポジトリ作成''
 # 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の作成)''
 # vi /usr/local/apache2/conf/extra/httpd-svn.conf  ← 新規作成
 <Location "/svn">
   DAV svn
   SVNParentPath /home/svn
   AuthzSVNAccessFile /usr/local/apache2/conf/svnaccess
   
   Require valid-user
   AuthType Basic
   AuthName "Subversion repository"
   AuthUserFile /usr/local/apache2/conf/users
 </Location>
~
+''Apacheの設定(svnaccessの作成)''
 # vi /usr/local/apache2/conf/svnaccess
   # グループ定義
   [groups]
   hoge-project = user1, user2
   
   # user0に全リポジトリ以下の読み書き権限を与える。
   [/]
   user0 = rw
   
   # hoge-projectに属するユーザにhoge-projectリポジトリ以下の読み書き権限を与える
   [hoge-project:/]
   @hoge-project = rw
~
+''Apacheの設定(usersの作成)''
 # vi /usr/local/apache2/conf/users
 user0:jeuWTQC7DmLt.
 user1:/D3ZokHltqisY
 user2:1goFvgl8KngsY
 user3:ra9qRtqiVfMfA

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS