今回はチーム開発を行なっていて、リモートでマージしようとした時にコンフリクトが起きるとどのように解決したら良いのかをまとめますね
今回は「コンフリクトはなんぞや」などについては解説せずに、解決までの一連の流れを紹介します!
Table of Contents
ローカルで解決
基本的にコンフリクトが起こるとローカル環境で解決するようにしましょう!
理由としては、GitHubではweb上でコンフリクトを解決できるようにはなっているのですが、解決したとしてもあなたが行った実装が正しく動いているのかというのを確認することができないからデス。
そのため、ローカル環境でコンフリクトを解決して、一旦確認をしてからリモートにpushするようにしましょうね!
一連の流れ
まずリモートでベースとなっているブランチと、そのブランチに対してマージしたい実装中のブランチがありますね?
その最新のブランチ情報をまずはローカルに持ってきましょう
git checkout ベースブランチ
git pull
次に実装中のブランチに移動して、リモートでマージ予定のブランチをローカルでマージします。
ここでコンフリクトが起こるので解消してくださいね!
git checkout ローカルで実装中のブランチ
git merge ベースブランチ
// コンフリクトを解消する
Code language: JavaScript (javascript)
これでOK
解消した時には実際に解消後も問題なく動いているのか確認ですよ!
では確認が済めばリモートにpushしましょう
git push origin 実装中ブランチ
ほんならリモートでもコンフリクトが解決されていると思うのでリモート側でもマージしちゃってください!
まとめ
コンフリクトを解消させた際には絶対にローカルで動作確認してから動かしましょう…