開店休業中

subversion

最終更新:

okumura

- view
メンバー限定 登録/ログイン

Leopardならインストーラでインストール

Leopardはapacheが標準で2.2なので、もうportsを使う必要はありません。
CollabNetからインストーラをダウンロードするとインストーラが走ります。

svnの入れ替え

インストーラで入れた場合、/opt/subversion以下にbinやらlibやらがインストールされます。
なので、標準で入ってるsvnと入れ替える必要があります。

まず、

sudo mkdir /usr/oldsvn
sudo mkdir /usr/oldsvn/bin
sudo mv /usr/bin/svn* /usr/oldsvn/bin/

の用にして元々入っていたsvnを退避するといいでしょう。

その後、

sudo ln -s /opt/subversion/bin/* /usr/bin

としてsvnコマンドをすべて入れ替えます。

また、apache用のモジュールも入れ替えます。

svnrootの作成

/homeはLeopardではマウントポイントとして使用されているため、/home/svnrootは作れません。
ここでは、svnrootを/var/svnrootとしました。

sudo mkdir /var/svnroot

mod_dav_svnを利用するためにはwwwユーザが使用可能でなければいけません。

sudo chown www:www /var/svnroot

あとは、

sudo -u www svnadmin create /var/svnroot/<プロジェクト名>/

の様にしてwwwユーザで/var/svnroot配下にリポジトリを作っていけばOKです。

apacheの設定

Leopardの標準のapacheでは、/private/etc/apache2/other/配下の.confファイルをすべてincludeするようになっています。
なので、ここにsubversion用のconfファイルを作成すると良さそうです。

sudo vi /private/etc/apache2/other/subversion.conf

などとして、以下の内容のsubversion.confファイルを/private/etc/apache2/other/配下に作ってください。
svnrootを/var/svnroot以外にしたときには適宜読み替えてください。

LoadModule dav_svn_module /opt/subversion/lib/svn-apache/mod_dav_svn.so
LoadModule authz_svn_module /opt/subversion/lib/svn-apache/mod_authz_svn.so
# Location for subversion 
<Location /svn> 
  DAV svn 
  SVNParentPath /var/svnroot 
  SVNListParentPath on
  AuthType Basic 
  AuthName "Subversion repository" 
  AuthUserFile /var/svnroot/passwd 

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

最後にpasswdファイルを作って終了です。

cd /var/svnroot 
htpasswd -c passwd <適当なユーザ名> 

portsでインストール

tracをportsで入れる場合、subversionもportsで入れる必要があります。
多分apacheをportsで入れる場合も同様でしょう。

portsはports内だけで依存関係を解決するため、芋づる式に全部portsじゃないと入れられないのです。

port install subversion +mod_dav_svn +tools

でひとまず本体を。

trac?の所でも書いた通り、pythonがなんかうまく入らんかったんですが、それ以外のbindingsはまとめて以下のように。

sudo port install subversion-javahlbindings subversion-rubybindings

これは以下と同義の模様。

sudo port install subversion-javahlbindings
sudo port install subversion-rubybindings

...ふーん、こんな事できたんや...。もっと早くに知っとけばかなり楽やったかもしれません。

rubyはRedMine入れるか考え中のため。javaは、XPlannner-subversion連携とか出来へんか画策中なんで。
まぁ、今すぐいるわけじゃないんですが。

文字化け対策

macportでsubversionを入れると、文字化けします。ロケールがちゃんと設定できていないのが原因らしい。
で、/etc/bashrcに以下の記述を追記してやると直ります。

export LANG=ja_JP.UTF-8

要は言語環境をちゃんと書いとけ、てことです。

目安箱バナー