CVSに取って代わるバージョン管理システム!と言うふれこみの、subversionを入れてみました。
# ちなみに、このサイトのblogやwikiでない部分は、cvsで管理されています。
portsからdevel/subversionをインストール。makeオプションは、WITH_MOD_DAV_SVN=yes
このオプションを付けると、apache2にmod_dav_svnがインストールされます。さらに、svnが使用するapr-utilと言うライブラリが、apache2に付属のものになります。
apache2に付属のものを使わない場合は、portsのaprが使われます。
別の場所で一度インストールしたのですが、そのときはapacheのバージョンが2.0.49で、apache2に含まれるapr-utilがlibiconvをリンクしてくれませんでした。
おかげで、subversionで日本語が使えないと言う問題が発生したのですが、apache2.0.50のapr-utilはデフォルトでiconvを使ってくれるようです。

subversionのインストールが終わったら、httpd.confに以下の設定を追加します。
<Location /svn>
    DAV svn
    SVNParentPath /var/svn
    SVNIndexXSLT "/svnindex.xsl"
    AuthzSVNAccessFile /usr/local/etc/apache2/svnauth
    Satysfy Any
    Require valid-user
    AuthType Basic
    AuthName "Subversion repository"
    AuthUserFile /usr/local/etc/apache2/svnpasswd
</Location>
subversionのリポジトリを置くディレクトリとして、/var/svnを指定していますので、このディレクトリを作成してオーナーをwwwにしておきます。
さらに、xslとして/svnindex.xslを指定していますので、subversionのソースのtools/xsltにある二つのファイルを、documentrootにコピーします。(documentroot以外にするときは、svnindex.xslの中のcssのパスを書き換える必要があります)
続いて、/usr/local/etc/apache2/svnauthファイルを作成します。このファイルには、リポジトリ毎のアクセス権を記述します。
とりあえず、私は以下のようにしました。
[/]
false = rw
[/]は、全てのリポジトリと言う意味です。この設定で、falseと言うユーザは全てのリポジトリに読み書きの権限をもちます。
/usr/local/etc/apache2/svnpasswdにユーザを登録します。
# htpasswd -c -m /usr/local/etc/apache2/svnpasswd false
とやると、ユーザfalseが追加できます。
続いて、リポジトリを作ってみます。
# cd /var/svn
# svnadmin create rep
# chown -R www:www rep
これで、repと言う名前のリポジトリができました。
クライアントからのアクセスは、https://www.wizard-limit.net/svn/rep/プロジェクト名 などのURLで行います。
proxy経由で、FreeBSDのsvnコマンドやWindowsのTortoiseSVNでアクセスできることを確認しました。

カテゴリ

トラックバック(0)

このブログ記事を参照しているブログ一覧: subversion

このブログ記事に対するトラックバックURL: https://www.wizard-limit.net/cgi-bin/mt/mt-tb.cgi/683

コメントする

このブログ記事について

このページは、falseが2004年7月 7日 14:20に書いたブログ記事です。

ひとつ前のブログ記事は「DAV」です。

次のブログ記事は「MTのmod_perl2化」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

広告

Powered by Movable Type 6.1.1