CVS から Subversion へのリポジトリ変換

おそらく CVS ユーザが Subversion に慣れる一番重要な方法は既存の プロジェクトを新しいシステムを使って継続することです。これには 抽出した CVS リポジトリを Subversion リポジトリに単にインポート することでもある程度達成できますが、さらに徹底した方法としては データの最新の状態だけではなく、それ以前の履歴全体を旧システムから 新システムに移すことになります。これは解くのが極端に難しい問題です が、それは不分割の性質を持たない CVS データの変更からチェンジセット を求めること、ブランチについて全く別の考え方を持っている両システム 間でデータ変換すること、その他の複雑な問題があるためです。それでも 少なくとも部分的には既存の CVS リポジトリを Subversion リポジトリ に変換するためのツールがあります。

The most popular (and likely the most mature) conversion tool is cvs2svn (http://cvs2svn.tigris.org/), a Python script originally created by members of Subversion's own development community. This tool is meant to run exactly once: it scans your CVS repository multiple times and attempts to deduce commits, branches, and tags as best it can. When it finishes, the result is a either a Subversion repository or a portable Subversion dumpfile representing your code's history. See the website for detailed instructions and caveats.