2011-06-30 5 views
1

現在、私たちは現在、Mercurialセットアップの概要を説明しているCodeIgniterを実行する大規模なサイトを持っています。私たちの考えは、以下のレポのセットアップで、複数の製品をalpha環境に統合するということです。販売によって承認されると、お客様の承認のためにuatに入ります。Mercurialを使用して複数のリポジトリ内で製品アイソレーションを維持する

    [LIVE] 
        | 
       [UAT] 
        | 
       [ALPHA] 
     /  |  \ 
[PRODUCT1]  [PRODUCT2] [PRODUCT3] 

私たちの関心は、両方のalphaに合併しuatにそれを作っているproduct1product2状況に対処する方法ですが、顧客が解決すべき課題を発見したので、uatから削除するproduct2必要があり、 productはまだライブに行く必要があります。これは、Mercurialの理解に基づいて、製品を分割したり、特定のチェンジセットのツリーを削除したりするために構築されたものではないため、問題です。

これは簡単な方法でどのように達成できますか? Mercurialは適切なソリューションですか、それとも何か調べるべきことがありますか?あなたはこのシナリオを実行しましたか?何をしましたか?

更新

私はブックマークにまで読んできました。それらをプル/プッシュで持ち運ぶことで、ブックマークを使用してproduct1 v1.4.21などのバージョンを追跡し、これらの複数のリポジトリに含まれる製品のバージョンを制御できます。それはまだalphaリポジトリ内のみproduct1を残し、alphaリポジトリ内product2からチェンジセットを削除するには私のために許可していないので、

ブックマークは、最善の解決策のように見えるしていません。

+0

は、異なるディレクトリの異なる製品ですか?または彼らは異なる水銀の枝ですか? – krupan

+0

different repos – Webnet

答えて

0

わかりませんが、あなたはthisのようなものが欲しいと思います。 (アルファ、UAT、リリースされた、表示停止中のバグの修復、およびその他の環境のための別々のブランチを維持することになります)等)。

3つの製品がすべて1つのリポジトリに格納されているのは混乱しています。彼らは同じですか、ちょうど異なるバージョンですか?次に、タグ付きのリビジョンを使用してブランチ上でそれらを識別しますが、それは1つのリポジトリ(実際には1つのコードベース)です。彼らは異なった製品ですか? (もしそうなら、なぜそれらをマージしていますか?)そして、別々のリポジトリを使って物事をきれいに保つことができます。

関連する問題