2

私は問題の解決策を探しているのではなく、将来起こりうる問題を回避しようとしているので、質問はあまり明確ではないかもしれません.

プロジェクト AB と C があり、B と C は A の異なるベースラインに基づいているとします。B と C の間で、B から C へ、またはその逆方向でマージしても問題ありませんか?後で問題が発生しませんか?

私の特定の状況では、A から B、B から C にマージされたバージョンがあり、C から B にマージしたいと考えています。トランク内の A では、C はインストール固有であり、B は顧客固有です。お客様が新しいビルドを展開した場合、最終的には C を放棄します。しかし、現在 (誤って) いくつかの変更が B を迂回して A から C にマージされているという状況があります。変更は A -> B -> C に移動する必要があります。問題は、A から C へのいくつかのマージが重要なマージであり、このバージョンでは、C から B にマージするだけの方が簡単なようです。大丈夫ですか?

ありがとう!

4

1 に答える 1

2

B と C は、A の異なるベースラインに基づいています。B と C の間で、B から C へ、またはその逆方向でマージしても問題ありませんか?

あなたが説明していることは横方向のマージと呼ばれ、(リンクをたどると)それらには代償が伴うことがわかります。マージは、ある時点で自明ではなくなる可能性があります。

ただし、あなたの場合、B が A から C にマージされたファイルに (重要な解決策で) 触れなかった場合、A から B へのマージは簡単なはずです (A に保存されているバージョンの単純なコピーがB の 1 つ)
V から B にマージすることにより、そのマージ中に削除する必要がある C からの潜在的な変更を含めることになります。

より一般的な方法では、好きな順序でリベース/配信できますが、前のリンクが示すように「横向き」のパターンに従う場合、一部のワークフローは自明ではないマージを生成するように不正に操作される可能性があります。

于 2009-07-09T15:28:46.370 に答える