1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Git コンフリクトの解消

Posted at

起こったこと

コンフリクトが起こった模様。
This branch has conflicts that must be resolved
Use the web editor or the to resolve conflicts.

スクリーンショット 2024-01-19 11.54.15.png

起こった操作

Udemyの講座で自己学習中に、講座内で新しいの教えるからローカルのファイルを全部削除し、新しく作ろうとなった。
削除ののち新しいファイルをローカルで作って git push してPR作ったら発生した。

発生原因

  1. 同じファイルの異なる部分を編集している:
    複数のブランチで同じファイルの異なる部分が編集された場合、マージ時にコンフリクトが発生する可能性がある。

  2. 同じファイルの同じ部分を編集している:
    同じファイルの同じ行が異なるブランチで異なる方法で編集された場合、Gitはどちらの変更を優先すべきかを自動的に判断できず、コンフリクトが発生する。

解消方法

  1. Resolve conficts を押してみる
    スクリーンショット 2024-01-19 12.07.45.png

  2. 差分内容を確認して、余分箇所を削除していく

    • 両方残したい場合は、このスクショで言うと以下の3つを消す。

      • <<<<<<< make-hinagata
      • =======
      • >>>>>>> main
        スクリーンショット 2024-01-19 12.10.30.png
    • 緑枠だけ残す操作をしたスクショ

      • この画面UI上で文字を消したりできる
      • <<<<<<< make-hinagata
      • =======
      • オレンジ枠の内容全部
        スクリーンショット 2024-01-19 12.17.24.png
  3. 書き換えて問題なければ右上の Mark as resolved を押してみる。
    チェックされてOK的なマークが出てくる。

  4. 全部書き換えていくと右上の conflicts 数が0カウントで表示される。
    スクリーンショット 2024-01-19 12.19.28.png

  5. confilicts がなくて、各ファイルで Mark as resolved を実施した状態
    スクリーンショット 2024-01-19 12.22.27.png

  6. 右上の Commit Merge を押してみる。

  7. コンフリクトが解消されたような画面に遷移する。
    自分のスクショはPrivateの個人リポジトリなので、このような画面になる。
    スクリーンショット 2024-01-19 12.25.37.png

所感

最初、めっちゃ焦るけど、差分を確認してマージしていくだけで良さそう。(当たり前か・・・)
これはチームでやっていたら、別の人と話しながら対処するのがベターな気がする。

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?