SourceTreeでブランチをマージする方法です。
手順
例として「master」ブランチに「sagyo」ブランチの作業内容をマージしてみます。
以下のような状態で、margeブランチにsagyoブランチの内容をマージします。
①masterを選択状態にした状態で、sagyoを右クリック→「現在のブランチにsagyoをマージ」を選択する
マージ元ブランチをカレントにして、マージするブランチを右クリックするのがポイントです。
②確認ダイアログが表示されるので「OK」をクリックする
③このような感じでマージされます。
masterブランチにてファイルを確認すると、マージされているはずです。
マージで競合が発生した場合
マージを行ったときに変更箇所がかぶると以下のようなメッセージが表示されます。
この時に対象ファイルを開くと以下のような感じになっています。
- 競合が発生した時のファイル例
- <<<<<<< HEAD masterで追加 ======= sagyoで追加 >>>>>>> sagyo
「<<<<<<< HEAD」の方がマージ元(今回の場合だとmasterブランチの内容) 「>>>>>>> sagyo」の方がマージする側(今回の場合だとsagyoブランチの内容)です。
このような時は、このファイルを手で修正してコミットすればOKです。
備考
- 競合修正時の「<<<<<<< HEAD」とか「>>>>>>> sagyo」、「=======」のようなGitが自動で挿入した文字はざっくり消してもらって構いません。
コメント