コンフリクト時の対応
基本的なコンフリクト対応
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
### フェッチする $ git fetch ### マージする $ git merge origin/master ;; Auto-merging files ;; CONFLICT (content): Merge conflict in file ;; Automatic merge failed; fix conflicts and then commit the result. # file : fileにおいてコンフリクトが起きていることが確認できる ### コンフリクトファイルを確認する $ git status -s ;; UU file ### コンフリクト部分を確認する $ git diff ;; ++<<<<<<< HEAD ;; + 自分の変更 ;; ++======= ;; + 他人の変更 ;;++>>>>>>> origin/master # 上部分が自分の変更、下部分が他人の変更になる ### ヘッダを削除する $ vi file <<<<<<< HEAD # 削除 自分の変更 ======= # 削除 他人の変更 >>>>>>> origin/test_master # 削除 # コンフリクトヘッダは不要なので削除する ### コンフリクトファイルを正しく修正する $ vi file 自分の変更 他人の変更 # 取込/残留/削除を判断 # 自分の変更内容と他人の変更内容をマージし、そのファイルが最も正しいと思われる状態にする ### 再度コミットする $ git add file $ git commit -m "コンフリクト解消" $ git push origin foo # gitlabをみると、自動的にコンフリクトが解消されている |