LoginSignup
1
0

More than 3 years have passed since last update.

コンフリクト解消方法[Git]

Last updated at Posted at 2021-05-17

開発をしているとコンフリクトが起こることがよくあります。
今回はそのコンフリクトを解消した方法について書いていきます。

■流れ
・git feach,pull 違い
・コンフリクト解消

git feach,pull 違い

Got-1 3.jpg

git feach origin master

①リモートリポジトリの最新が更新されます。

git merge origin/master

②最新情報をmasterブランチに結合させます。

git pull origin master

③は①+②を同時に行ってくれます。

コンフリクト解消

例を用いて解説して行こうと思います。
今回は、1branchと2branchで同じファイルを変更した際にコンフリクトが発生したと仮定します。
Got-6 2.jpg

1branch(C)をpushでき、masterブランチ(D)にマージすることができます。
コンフリクト発生なし。

2branch(C)をpushできるが、masterブランチにマージすることができません。
コンフリクト発生あり。

※コンフリクト・・・競合

2branch(C)はどうすればいいのか?

git pull origin master(D)

ローカルmasterブランチを最新にする。ここではDが一番最新。

git checkout 2branch(C)

2branch(C)に移動します。

git merge master(D)

2branch(C)にmaster(D)(最新情報)を結合します。
(1branch(C)で変更した内容が2branch(C)に反映されるイメージ)

競合の警告が表示されるので必要箇所を修正してください。
修正が終わったブランチを2branch(E)とします。

2branch(E)をpushでき、masterブランチ(F)にマージすることができます。

そうすることよってコンフリクトが解消できます。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0