Octopus
「Octopusマージストラテジー」は、3つ以上のブランチをマージする時に使用できる「マージストラテジー」です。内部的には、マージするブランチをブランチごとに「Recursive」でマージし、最終的なマージ結果を生成します。
マージコンフリクトが発生すると、マージに失敗する
「マージコンフリクト」が発生すると、「Octopus」によるマージに失敗します。これはマージの中断ではなく、マージの失敗です。
マージに失敗した場合、「git reset HEAD」でマージ前の状態に戻す必要があります。
(マージの中止)
この時、「git merge --abort」によるマージの中止は行えません。
「Octopus」によるマージに失敗する場合、マージを中止してマージするブランチ数を減らしてください。
例えば、以下の3つのブランチをマージするとします。
- ブランチ1(HEAD)
- ブランチ2
- ブランチ3
もしこれらのブランチのマージで「Octopus」によるマージが失敗した場合、マージを中止した後、以下のような方法で再度マージを行います。
- まず「ブランチ1」と「ブランチ2」をマージする
- 次に「ブランチ1」と「ブランチ3」をマージする
これで、「ブランチ1」に「ブランチ2」と「ブランチ3」の変更内容をマージすることができます。