Skip to content

Instantly share code, notes, and snippets.

@dsk52
Last active April 18, 2016 01:11
Show Gist options
  • Save dsk52/04f6e5cf578a900ce21a401a28c6dd68 to your computer and use it in GitHub Desktop.
Save dsk52/04f6e5cf578a900ce21a401a28c6dd68 to your computer and use it in GitHub Desktop.
Pull Request 時にコンフリクトが発生してしまった際の対処法

主な原因

自分の作業ブランチを作成してからPull Request する間に同じファイルを別ブランチで編集されてしまったとか。

対処方法

  1. master ブランチを最新版にする
  • $ ~ git:(master) git fetch origin
  • $ ~ git:(master) git pull origin master
  1. 自分の作業ブランチに戻る
  • $ ~ git:(master) git checkout -
  1. 作業ブランチにたいしてmasterブランチをrebaseする
  • $ ~ git:(feature) git pull --rebase origin master
  1. 途中でコンフリクトが発生するとそこでrebase処理が中断され、対象ファイルを修正するように言われる。
    対象ファイルを修正し、修正が完了したらaddしてrebase処理を再開する
  • $ ~ git:(feature) git add .
  • $ ~ git:(feature) git rebase --continue
    以降はコンフリクトが発生しなくなるまで修正とrebase再開処理を繰り返す。
  1. 全てのコンフリクトが解決したら、forceオプションを追加した上でremote上にpushする。
  • $ ~ git:(feature) git push origin feature:feature
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment