2006年11月15日

うちのsvnリポジトリは、trac等で公開をする前までは、各コンポーネント毎にリポジトリを作るという非効率な管理をしていました。
そろそろ嫌になって来たので、これを全部公開用にまとめようと思い、helpみながら頑張りました。

要件的には、リビジョン番号が変わっても良いから、とにかくlogを含めてインポートしたい!
という感じです。

最初はsvkとか使わなきゃだめなのかなぁ、とか思ってたのですがsvnadminだけで願いが叶いました。
dumpとloadを使います。
loadする時はオプション無しでloadしてしまうと、dump前のファイルパスにデータをぶっ込んでくれちゃうので、trunkとかが混ざってカオスになっちゃいました。
そこで--parent-dirオプションを使って、どのパスにloadするかを明示的に指定してloadします。
--parent-dirで指定するパスは、読み込ませる側のリポジトリ内に予めmkdirしておく必要が有ります。
/svn/Acme-Monta のリポジトリを /svn/public_repos に入れたい場合は

$ svn mkdir -m 'create import dir' file:///svn/public_repos/Acme-Monta
$ svnadmin dump /svn/Acme-Monta | svnadmin load --parent-dir Acme-Monta
のように作業します。
commit日時は引き継がれるので、リビジョン番号と日時の並びが変になりますが気にしない感じで。
影響でtracの最近のtimeline消えた!

これで、作業環境がすっきりしました^^
あとはsvkを本格的につかいまする。

それsvnadminでできるよ
それsvn

Posted by Yappo at 2006年11月15日 18:44 | TrackBack | tech
Comments
Post a comment









Remember personal info?






コメントを投稿する前に↓の場所にnospamと入力してください。