2008-08-19 12 views
3

ここに私が持っているシナリオです。私は1つの場所(A)にcvsリポジトリを持っていて、それを複製し、別の場所(B)のリポジトリと同期させたいと思っています。これはAからBへの単一の指向性の同期になります。これを行う最良の方法は何ですか? CVSで本当に実現できない場合は、これを達成するためにどのソースコード管理システムをお勧めしますか?ありがとうバージョン管理リポジトリを複製する最善の方法は何ですか?

答えて

4

CVSを使用しているとき、私はファイルの同期以外のことを行うためのツールを知りません。 rsync(Unix)やxcopy/robocopy(Windows)のようなツールを使って実現できます。

Subversionに移行する予定がある場合は、svnsyncというツールを使用して、別のリポジトリとリポジトリを同期させることができます。

3

CVSからgitなどの適切な分散バージョン管理システムに移行することをお勧めします。これは、この種の機能を非常に自然に提供します。

Subversionは同じことをするsvnsyncも提供しています。

2

CVSでrsync/filecopyアプローチをとる場合は、アクティブなコミットがないときにのみファイルを同期することが重要です。そうしないと、リポジトリのロックファイルがコピーされ、次回の同期までターゲット側でチェックアウト/アップデートできなくなります。

この理由だけで、CVSが悪い選択になることがあります。 CVSからSubversionへの移行パスは非常にスムーズです。歴史を持つ完全なCVSリポジトリをSubversionにインポートするツールがあります。

真の分散型バージョン管理にしたいのであれば、GitまたはMercurialを検討してください。しかし、それはあなたの "読み取り専用"の必要性のために過度になるようです。

0

ベスト(そしておそらく最も高価な)方法はClearcase Multisite

あるしかし、あなたはオープンソースを探しているなら、GitはすぐにどこでもSVNを置き換えるになってきてます。..

関連する問題