こんにちは、皆様はバージョン管理ソフトウェアとして何を使っていますか。
tracpath はエンタープライズ向けの利用者が多く、Subversion がトップでその次が Git の利用者が多くなっています。
組込みシステム開発の現場
組込みシステム開発のお客様の中で何十年と開発が継続している製品のバージョン管理ソフトウェアとして、「CVS」を利用されているお客様がいらっしゃいます。
新しいプロジェクトは tracpath の Subversion 環境をご利用頂いていますが、過去から継続している CVS プロジェクトだけはできない理由があるようです。担当者としては新しいバージョン管理の優れた機能を利用したいため「Subversion」や「Git」を使いたいと声をあげるのですが、管理側からは
「膨大なCVSリポジトリを他のリポジトリに移行(変換)したとき、だれも品質を保証してくれない」
という理由でなかなか踏み切れないと聞いたことがあります。
この問題以外にもバージョン管理システムを切り替えるリスクは存在しています。
まずは新規プロジェクトで新しいバージョン管理サービスを利用して徐々に移行することをオススメしています。
バージョン管理の初心者用コンテンツ
今回は、初心者向けに「CVS リポジトリを別のリポジトリに移行する方法」「SVN/Git/Mercurial リポジトリを別のリポジトリに移行する方法」の記事を公開しました。
リポジトリの変換用のツールも提供されており比較的簡単に移行できることがおわかりだと思います。
エンタープライズ向けの大規模なリポジトリの移行サービスを行っておりますのでまずはこちらよりご相談ください。
リポジトリ変換方法まとめ
移行先リポジトリ | ||||
---|---|---|---|---|
移行元リポジトリ | CVS | SVN | Git | Hg |
CVS | n/a | cvs2svn 一括変換 低 |
cvs2git 一括変換 低 |
hg convert 逐次変換 高 |
SVN | manual 手動変換 無 |
n/a | git-svn 一括変換 中 |
hg convert 逐次変換 低 |
Git | manual 手動変換 無 |
manual 手動変換 無 |
n/a | hg convert 逐次変換 低 |
Hg | manual 手動変換 無 |
manual 手動変換 無 |
manual 手動変換 無 |
n/a |
表中の各項目は、上から順に使用するコマンド、変換方法、難易度を表しています。
コマンド | cvs2svn | CVS→SVNリポジトリ変換コマンド |
---|---|---|
cvs2git | CVS→Gitリポジトリ変換コマンド | |
git-svn | SVN→Gitリポジトリ変換コマンド | |
hg convert | Mercurial拡張コマンド | |
manual | 移行元、移行先のバージョン管理ソフトウエアのcheckout/importコマンド | |
変換方法 | 一括変換 | 移行元のリポジトリを全て一括変換できる。 |
逐次変換 | 移行元のリポジトリを個別に変換できる。 | |
手動変換 | 移行元のリポジトリをチェックアウトして、移行先にインポートする。 | |
難易度 | 低 | 簡単に変換できる。 |
中 | 少し手間が掛かるが、変換できる。 | |
高 | 変換が不安定なことが多い。 |
詳しい説明は以下のサイトで説明していますのでご覧下さい。「CVS リポジトリを別のリポジトリに移行する方法」「SVN/Git/Mercurial リポジトリを別のリポジトリに移行する方法」