少し前に、社内でSubversionのサーバーを立てる機会があり、
インストール手順と注意点を記載しておきます。
インストールしたサーバーのOSは、タイトルにもあるようにDebian 4.0 etch(Linux)です。
今回は、WebDAVでSubversionを利用することにしました。
OSのインストールが済み、ひと通りの設定が済んだら、
Apacheをインストールします。
#Apacheのインストール
apt-get install apache2
次に、Subversionをインストールします。
# Subversionのインストール
apt-get install subversion
Subversionをインストールしたら、リポジトリの作成を行います。
# リポジトリ用フォルダを作成
mkdir /home/groups/test/svn
# リポジトリの作成 (形式はfsfsで作成)
svnadmin create --fs-type fsfs /home/groups/test/svn
# 所有者と所有グループを www-dataに変更する。
# ※apache2をapt-getでインストールしたときにApacheのUserとGroupがwww-dataになるため
chown -R www-data:www-data /home/groups/test/svn
次に、Webdavでsubversionにアクセスするための設定を行います。
# Webdavでsubversionにアクセスするために必要なモジュールをインストールをインストール
apt-get install libapache2-svn
# 文字化け対策用のモジュールをインストール
apt-get install libapache2-mod-encoding
# パスワードファイルの作成・設定
# ※コマンドを打つと、パスワード入力、確認入力の計2回パスワード入力を促されます
htpasswd -c /home/groups/test/.svnpasswd hogehoge
# /etc/apache2/mods-enabled/dav_svn.confの編集
vi /etc/apache2/mods-enabled/dav_svn.conf
------------------------------------------------
DAV svn
SVNPath /home/groups/test/svn
Options Indexes
Order allow,deny
allow from all
AuthType Basic
AuthName "Subversion repository"
AuthUserFile "/home/groups/test/.svnpasswd"
Require valid-user
↑ファイルの最後に追記する
------------------------------------------------
# /etc/apache2/apache2.confを編集
# 日本語文字化けを回避
LanguagePriority en da nl et fr de el it ja ko no pl pt pt-br ltz ca es sv tw
↓
LanguagePriority ja en da nl et fr de el it ko no pl pt pt-br ltz ca es sv tw
#※この設定を忘れると日本語名のファイルを扱ったりすると文字化けをおこすので注意して下さい。
# Apacheを再起動
/etc/init.d/apache2 restart
これで、下記のようにブラウザに設定したURLを指定してアクセスできればOKです。
上記のインストール例だと、
http://(マシン名 or IPアドレス)/svn/test
ちなみに、リポジトリを新たに作成する場合は、
上記のリポジトリの作成手順から先の作業を毎回行う必要があります。
さすがにそれは面倒なので、リポジトリの追加処理を自動化するシェルを作成しました。
よかったら参考にしてみて下さい。
>>svn.sh
実行方法は、sh svn.sh [リポジトリ名] です。