LoginSignup
4
1

More than 3 years have passed since last update.

プルリクエスト送ったら競合してたので解消手順のメモ

Last updated at Posted at 2020-12-24

競合してた

改修が完了したソースをpushして、
BackLog上からプルリクエストを送信した。
なんかいつもマージされるの早いのにマージ全然されないな、と思って確認したら競合してた。。。

解消方法

Git使い始めて1か月程度しかたってないので、
何かやらかさないかひやひやしながら、とりあえず解消方法を調べてみた。

競合した原因(´;ω;`)

①branch/Aを作成
②branch/Aの改修が終わってプルリク送る。
③branch/Aがmasterにマージされる前にbranch/Bを作成。
④branch/Aのソースに修正が入り、再度プルリク→マージされる。
 →この時点で差が...
⑤マージされる前に作ってしまったbranch/Bの作業完了
⑥branch/Bのプルリク送る
⑦マージされたbranch/Aのソースとbranch/Bのソースで競合。

結果:自分の修正と自分の修正で競合起こしてました(´・ω・`)

解消手順(`・ω・´)

①まずはcheckoutコマンドでmasterに移動して、masterから最新のソースを落としてくる。
・git checkout master
・git pull origin master

②作業ブランチに切り替えて、落としてきたソースを作業ブランチとマージする。
・git checkout (作業branch名)
・git merge master
※マージ後に、競合しているファイル名が表示される。

③git statusやgit diffで競合箇所を確認

④競合しているファイルをいい感じに修正

⑤git status
→念のためどのファイルをコミットするか確認
競合していたファイルがローカルの方が最新で、すでにコミット済みであれば修正後ここには表示されない。

⑥git add (競合しているファイルや、masterから落としてマージしたソース)

⑦git commit -m "なんか競合解消したのが分かるメッセージ"

⑧git push --set-upstream origin (ブランチ名)

以上で完了するはず。

必要であれば再度プルリクエストを送ること、
今回はBackLogでプルリクエスト送信したため、競合解消されたかどうか確認する!

4
1
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
4
1