TOTAL:1951, TODAY:64

Subversionの動かし方

先日、WebDavを動かすことができたので、本命のSubversionも導入することにしました。結構手間がかかりましたが、何とかできました。手順は次の通りです。まず、いつものようにSubversionのインストールからです。

$ aptitude update
$ aptitude install subversion libapache2-svn
$ aptitude install subversion-tools

Subversionのインストールの途中で、exim4の設定をどうするか聞かれます。どうせ後で削除するので、デフォルトどおりに回答します。その後、早速、次のようにしてexim4をstopさせます。

$ /etc/init.d/exim4 stop
$ update-rc.d -f exim4 remove
$ update-rc.d exim4 stop 60 5 .

次は、/etc/apache2/mods-availableにあるdav_svn.confの編集です。私の場合、「なーした日記」さんのホームページを参考に、次のようにしました。

<Location /svn>
  DAV svn
  # SVNPath /mnt/svn
  SVNParentPath /mnt/svn
  Options Indexs
  Order allow, deny
  allow from all
  AuthType Basic
  AuthName "Subversion Repository"
  AuthUserFile /etc/apache2/dav_svn.passwd
  # <LimitExcept GET PROPFIND OPTIONS REPORT>
  Require valid-user
  # </LimitExcept>
</Location>

ここで、SVNPathではなく、SVNParentPathとすることで、 後でSubverionのリポジトリを複数作成することができます。 実際使ってみると、リポジトリは1個で十分と思いましたが、 複数作れれば、リポジトリを消さずに何度でも練習できるので、SVNParentPathをお勧めします。 また、私の場合は、Subversionへのアクセスは認証されたユーザだけにしました。 <LimitExcept と書かれた行のコメント#を外せば、 リード(checkout)だけを誰でもOKにすることができます。 とりあえず、設定ができたので、Subversionを有効にします。

$ a2enmod dav_svn

この後、次のようにしてユーザパスワードを設定し、apache2を再起動します。

$ htpasswd -c /etc/apache2/dav_svn.passwd ユーザ名
$ /etc/inet.d/apache2 restart

一応、これでサーバー側の設定は終わりです。次に、リポジトリを作成します。dav_svn.confの設定で、SVNParentPathとして/mnt/svnにしたので、ここにmyrepoというリポジトリを作成します。

$ mkdir /mnt/svn
$ chown www-data:www-data /mnt/svn
$ cd /mnt/svn
$ svnadmin create myrepo  <- リポジトリの作成
$ ls myrepo
README.txt conf dav db format hooks locks
$ chown -R www-data:www-data myrepo

この後、ローカルマシンのブラウザから、http://玄箱のホスト名/svn/myrepoとして、玄箱に繋がればOKです。ブラウザにはRevision 0:と出ているはずです。新たにリポジトリを作成する場合は、svnadmin create ****から繰り返します。
Subversionのクライアント側は、GUIで操作できるTortoiseSVNが便利です。日本語パッチもあるので分かりやすいと思います。TortoiseSVNを使ってSVNのデフォルトであるディレクトリであるtrunk, tags, branchesを作るには、

 ①適当なフォルダで右クリックし、[TortoiseSVN]->[リポジトリブラウザ]を選択
 ②URLを聞かれるので、http://玄箱のホスト名/svn/myrepoを入力
 ③右クリックで[フォルダの作成]を選び、順にtrunk, tags, branchesを作成

後は、適当なファイルやフォルダをimportすれば、使えるようになると思います。importする際は、trunkフォルダの下に入れるのがSubversionの流儀のようです。cvsに慣れている人は、最初ローカルマシンのどのフォルダがリポジトリのどこにimportされるのかよく分かりませんが、テスト的なリポジトリを作成して、何回かやっていればわかると思います。TortoiseSVNの使い方は、以下の二つのページが分かりやすいです。
 ・TortoiseSVNユーザガイド
 ・Subversionによるバージョン管理

最新の7件

OpenGL

電子工作

玄箱HG

ホームページ

日記

Copyright (C) 2007 Arakin , All rights reserved.