前回の記事でマージする際のコンフリクトをCLIのみで行う方法を書きました。
ここではRebaseする際のコンフリクト解消法を同様に書いていきます。
現在の作業ブランチをdev
、取り込みたいブランチをmain
とします。
これらがrebaseする際にconflictしている場合、
$ git rebase main \\ コンフリクト発生
これで、conflicted.txt
にコンフリクトが発生しているとします。
このファイルの変更に対してdevで行った変更を取り込みたい場合は
$ git checkout --theirs conflicted.txt
また、mainでの変更を取り込みたいときは
$ git checkout --ours conflicted.txt
となります。 Mergeのときと異なり、Rebaseのときは対応するブランチと一人称/三人称の関係が逆になっているので注意が必要です。