最初のリソース:
- Clearvision CC2SVN ツール
- Polarion による SVN インポーター
- CollabNet の記事とリソース
実際のリポジトリのサイズ、ファイルの数、またはそれらのサイズは、SVN の制限要因ではありません。開発者の数、変更の並行性、統合およびリリース プロセスの複雑さ、マージおよびディレクトリのバージョン管理 (リファクタリング) の必要性は、大規模なプロジェクトに問題を引き起こす可能性があります。プロジェクトが大規模であるが、かなり安定しており、開発者の数が少なく、ブランチの数が少なく、以前のリリースに大量の修正をバックポートする必要がない場合、SVN は問題なく機能するはずです。
ClearCase からデータを取り出すカスタム マイグレーション ツールを作成しましたが、これは簡単な作業ではありません。2 つのシステムごとに、データ モデルとデータに対する操作が異なります。ClearCase から意味のある方法で実際にデータを取得するのは非常に難しいため、カスタムの移行ツールを作成しようとすることはお勧めしません。商用ソリューションの制限の詳細については、リソースにリンクされているソリューション プロバイダーに問い合わせることをお勧めします。
私は個人的にできるだけ多くのデータを持ち込もうとしますが、ClearCase と比較して SVN の制限に注意する必要があります。ディレクトリのバージョン管理 (リファクタリング) の履歴は、この移行中に失われる可能性があります。SVN は ClearCase のようなスパース ブランチをサポートしていないため、タスク ブランチを使用した場合に SVN リポジトリのサイズが肥大化する可能性があります。その場合、おそらくシステム ブランチのみに制限する必要があります。ClearCase のファイルには個別の分岐構造がありますが、SVN には製品ごとに分岐があるため、プロセスで多くの分岐変換が発生します。シリーズの完全に統合されたラベルのために、システム ブランチと、おそらくそれらのブランチのラベル付きバージョンに制限することで、多くのトラブルを回避できます。チームが UCM を使用している場合、すべての UCM メタデータをほとんど忘れることができます。
時間枠は、使用するツールに大きく依存します。あなたのような主要なプロジェクトの場合、数週間かかることもあります。ClearCase データベースには、何らかの奇妙な理由で、読み取り操作でも多くのロックがあり、移行のような大規模なアクセスで多くの問題を引き起こすすべての中央テーブルが 1 つあります。私のツールをあなたの製品より少し大きい製品で初めて実行したとき、3 年間実行されると見積もっていましたが、多くの最適化、並列化、段階的な移行の後、約 1 週間に短縮されました。ただし、ツールの完成度によっては、所要時間に大きなばらつきが生じる可能性があります。ただし、SVN に移行すると、ClearCase からの多くの履歴とメタデータを無視することになるため、移行ははるかに高速になるはずです。
ClearVision はそのページで、その CC2SVN ツールが 2 つの製品間の橋渡しを行うことができると述べています。私はこのツールを使用しませんでしたが、想定どおりに機能する場合は、いくつかの処理後に 2 つのリポジトリを同期できます。これにより、週末の切り替えが可能になり、開発のダウンタイムはゼロになります。これが不可能な場合は、最初にある日付まで移行し、次にその日付以降に変更された小さなデータ チャンクを移行する、増分移行などの代替案を求めてみてください。
プロセスの非常に重要な部分は、移行後のフェーズです。スイッチが開発者にもたらす頭痛の種を軽視しないでください。トレーニングと明確な文書化の必要性を過小評価してはなりません。また、ソフトウェア エンジニアリング部門には、両方の SCM システムを操作し、開発者が新しいシステムで慣れ親しんだ方法を説明できる、トレーニングを受けたサポート チームが必要です。これは、実際には、移行で首を痛める可能性のあるポイントです。開発者はあらゆる変更に抵抗し、SVN がプロジェクトにもたらす利点が何であれ、それは本質的にはるかに劣ったシステムです。ClearCase は、開発者が SVN では得られないほどの柔軟性を提供します。プロセスの早い段階で開発者を参加させない限り、開発者を失うか、さらに悪いことに、移行全体が元に戻され、災害が宣言され、自分の仕事を失う可能性があります。