CVS2SVN
2006.01.03 Tuesday 01:02
インストール
本体がpythonでかかれているのでpythonが必要.CVSまたはRCSが必要とあったのでWinCVS1.3 SJISごった煮版に入っていたknjwrp適用済みcvs.exeを利用.
また,sortが必要なのでcygwinに入っているsortを使うことにした.
最初は本体をダウンロードして適当に展開.
pythonはWindows版をインストール後にパスを通す.
CVSとsortは面倒くさいのでcvs2svnを展開したディレクトリにコピー.
cygwinのsortはdllとしてcygwin1.dll, cygiconv-2.dll,
cygintl-3.dllも必要なのでコピーする.
cvs2svnをそのまま使うとCVSROOTを正しく解釈できずにエラーで止まってしまう.
どうやらWindowsのC:\path\to\repositoryを"C"と誤認するようだ.ドライブ名を省略しても設定時には絶対パスに直されるので無意味.これを回避するため,cvs2svnにある
os.environ['CVSROOT'] = ctx.cvs_repository
というところに
os.environ['CVSROOT'] = ":local:" + ctx.cvs_repositoryと:local:を追加する.
変換
python cvs2svn --use-cvs -s SVN_REPOSITORY CVS_REPOSITORY
ここで,SVN_REPOSITORYはこれから作成するSubversion Repositoryのパス.存在していてはいけない.CVS_REPOSITORYは既に存在するCVSのRepository,あるいはそのサブディレクトリ.
メインブランチのみ取り出すための--trunk-onlyオプションを使うと,ブランチのみならずタグも移行されない.メインtrunk+そこについたTagのみの移行を行うオプションはないようだ.
Comments