今日のハマリ。
Rinza Software FamilyのうちいくつかのソフトウェアはSubversionというバージョン管理システムで管理しているのですが、いろんなプロジェクトがひとつのSubversionリポジトリに混在していたので、1プロジェクト1リポジトリとなるように再構成しました。
手順としては、ここにあるように svnadmin dump した論理形式の
リポジトリをsvndumpfilterを使って、いらないディレクトリを消していきます。
repoX --> projectA
|
+-> projectB
|
+-> projectC
という感じ。
で、最終的には分割された複数の論理形式を svnadmin load します。
load が完了したら、正しくチェックアウトできるかを確認。
svn co file:///srv/svn/repo-projectA
svn co file:///srv/svn/repo-projectB
svn co file:///srv/svn/repo-projectC
よしOK。
ということで再び Apache 経由で参照できるように httpd.conf を書き換え。
以前からApacheを経由して WebDAV プロトコルでリポジトリにアクセスしていたので
以前: http://hostname/repoX/projectA
今回: http://hostname/projectA
という感じでURLが変わります。
複数のリポジトリが /srv/svn にできたので便利な方法があります。
SVNParentPath /srv/svn
これをやると個別にリポジトリのパスを SVNPath で指定する
(Location ディレクティブをリポジトリの数だけ書かないといけない)
ところを、親ディレクトリだけの指定で配下のリポジトリをすべて
公開することができます。
ということで、
引用:
DAV svn
SVNParentPath /srv/svn
AuthzSVNAccessFile /etc/apache2/svn_authz_access_file
などとやってすんなりと移行完了。
Webブラウザから http://hostname/porjectA を参照すると確かにリポジトリの内容が見えます。
ここでやめておけばよかったのですが、せっかくなので Trac という Wiki + Bugトラッキング + Subversionリポジトリブラウザ なんてのをいれてみました。開発プロジェクトのポータルのような感覚で利用でき、オープンソースの開発プロジェクトで最近よく見かけます。
trac を置くURLをLocationで作り出すのですが、svnリポジトリではURLをルート( / )にしていて同じく Location で指定しているので、Location の設定がバッティングしてしまい、うまく表示してくれません。
いろいろ試行錯誤の結果、svnのほうをDirectoryディレクティブで指定し、DocumentRoot でsvnのリポジトリを含むディレクトリを指定したら、めでたく両方の指定が有効になりました。
引用:
DocumentRoot /srv/svn
ScriptAliasMatch ^/trac(.*) /usr/share/trac/cgi-bin/trac.cgi$1
SetEnv TRAC_ENV_PARENT_DIR /srv/trac
DAV svn
SVNParentPath /srv/svnAuthzSVNAccessFile /etc/apache2/svn_authz_access_file
Webブラウザで http://hostname/porjectA と http://hostname/trac/porjectA を確認することができました。
しかし、ここからハマリが始まります。
ブラウザで確かにリポジトリが見えるのに、なぜか svn コマンドからはチェックアウトできなくなってしまいました。
いろいろ試してもダメ。
もうあきらめかけてた頃に以下のサイトを見つけて終了。
http://www.hinet.mydns.jp/~hiraku/tDiary/20050317.html
というわけで DocumentRoot が原因でした。
カテゴリ:サーバ管理
<< P2Pソフトウェアを簡単につくるオーバーレイネットワーク構築ツールキット | Main | 仮想化技術 再び >>
ワタナベ (2006-01-24 12:00) | コメント(0)| トラックバック(0)
トラックバックURL:
プロフィール
ワタナベ
サーバ管理が趣味の渡邉充隆です。
仮想化やネットワーク構成に興味があります。
あとは、ウェブ系の技術(プログラミングからインフラまで)も好きで、特にデータの見せ方などを工夫することで情報の流通や再活用を促進する技術を研究しています。
dev.tyzoh.jp では ssdb の(コアではなく)周辺のコードをいじっています。
月別アーカイブ
Copyright (C) 2004-2008 Nihon Unisys, Ltd. All Rights Reserved.
Powered by Movable Type Open Source