バージョン管理 - Subversion - インストール

 クラウディア
1. 概要
2. インストール
3. 設定
4. ディレクトリ定義
5. 再起動

1. 概要

 章立てが、無茶苦茶なのは、本サイトのお決まりなのだ。  「Subversion」自体のインストールについては、ずいぶん以前、「FreeBSD」本体の説明の箇所に書いたけれども、最近は、インストールしなおすこともなかったので、インストール手順については、ふれることもありませんでした。  まぁ、「FreeBSD」自体もソースのリポジトリが、「cvs」から「Subversion」へ、そして「Git」へと移行して、「Subversion」を目にする機会も少なくなってきましたが。  久々に、インストールする機会があったので、メモを残しておきます。  インストール先は、「FreeBSD 14.0 RELEASE」です。

2. インストール

 下記の2の「ports」をインストールします。

/usr/ports/devel/subversion
/usr/ports/www/mod_dav_svn
 「Subversion」からインストールします。

cd /usr/ports/devel/subversion
make config
 下記は、デフォルトの状態です。
「TortoiseSVN」-「/usr/ports/devel/subversion」「make config」

 デフォルトのままにしておきます。
 依存する「ports」のオプションもすべて、デフォルトのままとします。


cd /usr/ports/devel/subversion
make
make install
 次に。

cd /usr/ports/www/mod_dav_svn
make
make install
 オプションは、ありません。

3. 設定

 初期設定まで、書いておきます。  ウェブ経由で、アクセスできるように、ウェブサーバの設定を行います。  ここでは、「apache」の例をば。  この時点で、「apache」のバージョンは、「2.4.58」です(2024年1月18日)。

vi /usr/local/etc/apache24/httpd.conf
 「mod_dav」モジュールおよび、「SSL」ジュールを使用しますので、以下の先頭の「#」をはずしてコメント解除します。

#LoadModule socache_shmcb_module libexec/apache24/mod_socache_shmcb.so

#LoadModule ssl_module libexec/apache24/mod_ssl.so

#LoadModule dav_module libexec/apache24/mod_dav.so

#Include etc/apache24/extra/httpd-ssl.conf
 「FreeBSD 12.0 RELEASE」をさわっていた頃と、行番号がほとんど同じです。  「LoadModule」の一連の定義の最後くらいに、下記の行を追加します。

LoadModule dav_svn_module libexec/apache24/mod_dav_svn.so

4. ディレクトリ定義

 リポジトリを。

/usr/local/www/svn/
 に置くとします。

vi /usr/local/etc/apache24/Includes/svn.conf


 以下のように記述します。


<Directory "/usr/local/www/svn/">
    Options +Followsymlinks
    AllowOverride All
    Require all granted
</Directory>

<Location /svn>
    <IfModule dav_module>
        DAV svn
        SVNParentPath   /usr/local/www/svn
    </IfModule>

    SSLRequireSSL
    SSLVerifyClient none
    #SSLVerifyClient require
    SSLVerifyDepth 1
    SSLRenegBufferSize 200000000

    <LimitExcept GET PROPFIND OPTIONS REPORT>
        Require valid-user
    </LimitExcept>

    AuthType Basic
    AuthName "Subversion repository"
    AuthBasicProvider file
    AuthUserFile /usr/local/www/svn/passwd
    Require valid-user
</Location>
 4行目は、実際には、アドレスを制限します。  23~27行目は、パスワードをかけています。  詳細は、「メンテナンス・トラブルシュート - ウェブサーバ - アクセス制限」をご参照ください。

5. 再起動

 ここまで記述したら、定義ファイルの確認をして 「apache」を再起動します。

service apache24 configtest

service apache24 graceful
 リポジトリの作成等については、他のページをご参照ください。
earthcar(アースカー)