ザックリした手順
depotmap
/usr/bin/svk depotmap --init
mirror
/usr/bin/svk mirror http://path/to/svn/repository //mirror/
コマンドの説明
ユーザーホームには必ず~/.svk/みたいなディレクトリができるようです。svkのワークスペースみたいなイメージ?ここでcacheとかを管理しています。
depotmap
どこをdepotとして扱うかを設定したり外したりできます。
svk depotmap hoge /var/hoge
で/va/hogeディレクトリをhogeデポットとして登録。
svk depotmap -d hoge
でhogeデポットを除外。
svk depotmap -l
でdepot一覧をみれます。
mirror
ミラーリングの設定。
svk mirror http://hoge/hoge_project /hoge/mirror
とやると、hogeデポットの下にmirrorというディレクトリを作って、ミラーリングの準備をやってくれます。
mirrorの部分は任意ですが、
/hoge
とか
/hoge/
とかはダメ。depot以下のどこかのディレクトリじゃないとダメ!
ファイルシステム上では、mirrorした段階でdepotディレクトリ(この場合は/var/hoge/mirror)にsvnファイル一式がごっそり作られます。
syncしようとしたらこんなんでた!
[foo@bar] # /usr/bin/svk sync //mirror/test Syncing http://path/to/svn/repository/too/too/too/too/too/too/too/long/path Retrieving log information from 1 to 23417 Oh no, no more exceptions! add_directory() failed. at /usr/lib/perl5/site_perl/5.8.5/SVN/Mirror/Ra.pm line 1102.
超泣きそうになりましたが、パスを浅くしたら通りました。あんまり深いとダメなんでしょうか?