これは私のレイアウトです
/trunk
/branches/qa
/branches/dev
将来、このブランチを削除するつもりはありません
--reintegrate
DEVからQAにマージするときに使用する必要がありますか?またはQAから/trunkへ
ありがとう
これは私のレイアウトです
/trunk
/branches/qa
/branches/dev
将来、このブランチを削除するつもりはありません
--reintegrate
DEVからQAにマージするときに使用する必要がありますか?またはQAから/trunkへ
ありがとう
マージの方向が常に同じである場合(つまり、qaからdevにマージせず、dev-> qaのみ)、単純なマージで十分です。
不要なマージを回避するために、別のモード(再統合)が必要でした。「機能ブランチ」シナリオでは、機能ブランチに2種類の変更が加えられます。
機能をトランクに入れたい場合は、(1)のみをマージします。ただし、デフォルトのマージメカニズムを使用する場合、SVNは(2)をトランクにマージしようとします。これにより、競合や隠れたエラーが発生します。これらの変更はすでに存在するためです。
2つのブランチ(を含むtrunk
)間で再統合マージを使用し、ソースブランチを維持することを意図することは、一般的に悪い考えです。将来のマージで、以前の再統合マージでソースであったブランチを使用することには奇妙な問題があります。
一般的な解決策は、ソースブランチをtrunk
(ターゲットブランチである必要trunk
があります)に再統合してマージし、マージ後にソースブランチをドロップアンドリクリエイトすることです。
しかし、あなたは少し違うことをしたいと思っています。
との間で再統合マージを実行する必要がdev
ありqa
ますか?私のアドバイスは、再統合マージを避け、代わりに順次マージまたは差分マージを使用し、マージするときに作成のパスに従うことです(以下を参照)。
通常、変更をからdev
にマージするqa
場合は、にマージ(およびコミット)してから、にマージ(およびコミット)します。言い換えれば、あなたは創造の道をたどります。これにより、コミットとマージを監査するときに、マージ履歴がわかりやすく表示されます。dev
trunk
trunk
qa
これが不可能な場合は、ブランチ間のマージを慎重に行う必要があります。これらは通常、順次マージのみに制限する必要があります。dev
次に、またはqa
にマージするときが来ると、trunk
はるかに簡単になります。
お役に立てれば。