Subversion活用中。Windowsサービス登録、複数リポジトリ運用など

Subversion

Subversion実践入門:達人プログラマに学ぶバージョン管理(第2版)

SVN Service」ってのを使ってサービスに登録する事に成功。でもこんなの使わなくても、WindowsXPあたりに付いてくるsc.exeってのを使えばServiceをコントロールできることが分かりました。

複数リポジトリの運用にも成功。"svnadmin create hoge"でリポジトリを作るのは良かったけど、svnserver起動オプションの"-r"が良くなかったみたい。"-r"オプションでリポジトリの仮想ルートを設定できるんだけど、これでリポジトリを直接指定してたのが間違いだった。分かってみれば当たり前なんだけど、ルート=リポジトリなので他のリポジトリが見えなくなってたのよね。

結局、仮想ルートを一つ上のフォルダに設定変更して、そのフォルダ配下に第二リポジトリを作成することで解決。クライアント側は、"svn://server.address/hoge" みたいにサーバアドレス+リポジトリアドレスを入力する事で、リポジトリを選択できるようになりました。

追記:何だか分かりにくい説明だと思ったので追記。-rで指定する仮想ルートを"c:\repos"、リポジトリ1を"hoge"、リポジトリ2を"fuge"とする。

まず c:\reposで"svnadmin create hoge"、"svnadmin create fuge"してリポジトリを作成。その後 -r オプションに"c:\repos"を指定すれば複数リポジトリの運用が出来る。

上記設定後、クライアントから"svn://server_address/hoge"や"svn://server_address/fuge"に接続すれば、それぞれのリポジトリが使用可能。"svn://server_address/"で繋いでから降りていく事は出来ないので注意が必要です。

まだブランチとマージが良く分からん。コマンドの意味は分かるんだけど、実際にやってみると何だかうまく行かないなぁ…TortoiseSVNも使いこなしてるとは言いがたいし、もうちょっと頑張ってみるかね。