2011-01-14 7 views
0

カスタマイズを失うことなく、メジャーブランチからの改善を継続的に引き出しながら、継続的に進化するプロジェクトを特定のクライアント向けにカスタマイズするにはどうすればよいですか?分岐したHgプロジェクトとトランクリビジョンの統合

私はちょうどメインリポジトリから引き離して、適切な変更をマージし、元に戻すべきではありませんか?

私はMercurialを長く使っていないので、変更された名前空間と異なるドメイン(クライアント)ロジックを混乱させることなく2つのプロジェクトを統合することに懸念しています。


更新:それはメインリポジトリから引っ張って別のリポジトリを使用するように見えるが移動するための方法です。

答えて

0

方法あなたはそれを使用している:

私はちょうど適切な変更をマージし、メインリポジトリから引っ張っておくと押し戻すことはありませんでしょうか?

は、これを正確に処理する方法です。複数の顧客に適用される変更は、メインレポで完了し、顧客ごとのレポジトリに引き込まれます。顧客ごとの変更はカスタマーごとのレポで行われ、メインにプッシュバックされることはありません。

+0

変更された名前空間はどのように扱いますか?私はルートネームスペースとして1つの会社名を持つプロジェクトを開発していましたが、今はそれを一般化したいと思います。私がそれを変えたら、それは私のすべての引っ張りを台無しにしないだろうか? –

+0

好奇心が強い。私が言及した指定顧客の店舗ではなく、なぜ別の店舗を好むのですか?私は複数のreposが顧客のブランチを持つよりも痛みが増していることを発見しましたが、多分私には何かがありません。 –

+1

私がMercurialという名前のブランチで始めたのは新しいもので、しばしば推奨されませんでした。私はまだ名前のついた枝が決して削除できないのが好きではありません。私のツールのどれもがプロジェクトファイルやそのようなものへの絶対パスを保存しないため、別のreposの作業は素晴らしいです - 私はいくつかのIDEが別のreposに苦痛を与えていることを理解しています。 。ブックマークはおそらく2つの間の最良の妥協であり、1.6の時点ではプッシュ可能です。 Steve Loshには、そのすべてのベスト・サマリーがあります。http://stevelosh.com/blog/2009/08/a-guide-to-branching-in-mercurial –

0

​​を使用します。カスタマイズしてデフォルトからブランチを作成し、必要に応じてデフォルトの変更を名前付きブランチにマージします。

関連する問題