Mac de Subversion

さて。

先日Leopardにバージョンアップして以来まだSubversionを入れなおしていないのでそろそろインストールしなおそうかと思っている訳なのですが。

我がぼそっとのアクセスログを見るに「Subversion 設定」みたいな感じのキーワードでぐぐってたどり着いた人が結構いるような気配を感じるので、とりあえず私のインストール〜設定手順を晒してみたいと思います。

参考になるかどうかは分かりませんけど。

  • Subversion & Apache2のインストール
    • 以前はfinkとかからインストールする必要があったような気がしていたのですが、最近のMacだとデフォで入っているのでインストール不要みたいです。
  • Subversionリポジトリ作成
    • 作成する場所はどこでもいいのですが、ここではとりあえずホームディレクトリの直下の「svn/repository」をリポジトリにしてみます。
$ cd
$ mkdir ./svn
$ cd svn/
$ mkdir ./repository
$ svnadmin create ~/svn/repository/
  • リポジトリの公開
    • 代表的な手法としてsvnserveで公開する方法とApacheで公開する方法がありますが、私は後者の方が好きなので後者でやります。
    • ます、「/etc/apache2/httpd.conf」に以下の一文を追加します。
LoadModule dav_svn_module     libexec/apache2/mod_dav_svn.so
    • 続いて、以下のコマンドで認証用のファイルを作成します。
$ htpasswd -c ~/svn/svn-auth-file chiba_mk3
New password: 
Re-type new password: 
Adding password for user chiba_mk3
    • 続いて以下の設定を「/etc/apache2/httpd.conf」に追加します。
<Location /svn>
  DAV svn
  SVNParentPath /(path-to-svn)/svn

  AuthType Basic
  AuthName "Subversion repository"
  AuthUserFile /(path-to-svn-auth-file)/svn-auth-file 

  <LimitExcept GET PROPFIND OPTIONS REPORT>
    Require valid-user
  </LimitExcept>
</Location>
    • 以下のコマンドでapacheを起動します。
$ su -
# apachectl start
http://localhost/svn/repository/
$ cd
$ mkdir ./svn_work
$ cd ./svn_work/
$ svn checkout http://localhost/svn/repository
$ cd repository/
$ mkdir ./trunk
$ mkdir ./branches
$ mkdir ./tags
$ svn add ./trunk/
$ svn add ./branches/
$ svn add ./tags/
$ svn commit -m "init import"
Authentication realm: <http://localhost:80> Subversion repository
Password for 'chiba_mk3': 
Adding         branches
Adding         tags
Adding         trunk

Committed revision 1.
# log-encoding = latin1
    • の部分を、
log-encoding = UTF-8
    • に変更。10.4のときは
log-encoding = Shift-JIS
    • と設定しなければコミットできなかったのに何げに変更になっていますね。ってか 以前に書いた通り「log-encoding = UTF-8」なんて設定は本来意味が無いはずなんですが・・・

以上で完了です。とりあえず個人でローカルで使うだけなのでSSLとか使ってません。