私の会社には、中央のCVSサーバーがあります。まだ積極的にサポートされている製品バージョンごとに異なるブランチがあります。ローカルでは、基本的にhttp://undefinedvalue.com/2010/07/02/workflow-remote-cvs-local-gitのアプローチに従ってGitを使用しています(git cvsは非常に長い時間がかかり、エラーで停止しました:- /)。
CVSブランチごとに個別のGitリポジトリを使用しています(各CVSブランチは異なるディレクトリでチェックアウトされています)。たとえば、ディレクトリ〜/ dev / our_product / v2、〜/ dev / our_product / v3、〜/ dev / our_product / v4、および〜/ dev / our_product / mainがあり、それぞれディレクトリに.gitが直接含まれています。マスターブランチはCVSに従います(定期的にcvsupdateを実行してからgitcommitを実行することにより、手動で更新します)。
私は今、これらすべてのGitリポジトリを1つにまとめることを考えています。2つの異なるリポジトリからの2つのブランチを1つのリポジトリに結合する方法を理解している場合 正しく、新しいリポジトリを作成して、既存のすべてのリポジトリを追跡することができます。また、既存のリポジトリからすべてのブランチをインポートしますよね?その後、既存のリポジトリを破棄できますか?または、それを実行したい場合は、別の方法を使用する必要がありますか?
また、それが私のワークフローを容易にするかどうか疑問に思います。
ユースケース1:some-featureと呼ばれる機能ブランチを作成することにより、CVSメインブランチの機能の開発を開始します。それから私はそれがv3に入らなければならないことを学びます。機能ブランチをv3にリベースできますか?
ユースケース2:v2で(他の機能の機能ブランチで)変更を加える場合、それをv3、v4、およびmainにマージする必要があります。それぞれのCVS追跡ブランチで「gitmergesome-other-feature」と入力するだけでそれを行うことができますか?
よろしくお願いします、
イェンス