2 つの質問があります。
「dirB から「開発」ブランチを削除してから、dirA に新しい「開発」ブランチを作成することは可能ですか?
これに対する答えは「はい」ですが、CVS にコミットされたディレクトリ構造 dirA/dirB/dirC が何を意味するかによって、意味が異なります。
単一のリポジトリがあり、ディレクトリ構造がすべて dirA をルートとする単一の cvsroot の下に含まれている場合、dirB から「開発」ブランチを削除すると、cvsroot の下のすべてから「開発」ブランチが削除されます。その時点で、dirA に新しい「開発」ブランチを作成すると、階層全体のすべてのファイルが必要に応じて分岐されます。
代わりに、ローカル ディレクトリ構造 dirA/dirB/dirC があり、dirA が 1 つの CVSROOT でホストされている CVS にコミットされ、dirB が別の cvsroot でホストされている CVS にコミットされている場合、dirA と dirB に対して行うことは独立しています。 dirB が dirA の cvsroot にコミットされないようにする範囲で、相互に依存します。このように設定している場合は、あなたが話したアーカイブを維持し、dirB のすべての深さのすべてのフォルダーからすべての CVS サブフォルダーを削除してから、dirA にコミットして、同じ cvsroot の一部になるようにするのが最善です。次に、必要に応じて「開発」をブランチとして追加します。
2 番目の質問: 「"cvs -dB development dirB" を実行して、dirA にブランチを再作成すると、何か問題が発生しますか?」
これに対する答えは基本的に「いいえ、ブランチ「開発」をチェックアウトしてアクセスできなくなることを除いては。あなたはまだ個々のコミットでそれらを取得することができます.あなたが言ったように、歴史と状態は些細なものです. 最初の方法で設定した場合、それはあなたが提案したとおりになり、すばやく削除してから適切なレベルで再作成します。2 番目の方法で設定した場合、削除は不要ですが、CVS サブディレクトリを一掃してから、dirA の下で dirB をコミットすることが、すべてを 1 つの cvsroot の下に配置するために不可欠です。 " ブランチ。