Gitでコードの競合を解決する方法
複数の開発者が同一ファイルを並行して変更・コミットを行うと、コードコンフリクトが発生します。発生したコードコンフリクトを解決する手順を以下に示します。
- git statusコマンドを実行して現在のブランチの状態を確認し、競合しているファイルがないか確認します。
- 衝突するファイルを開くと、次のようなコードが含まれていることがわかります。
<<<<<<< HEAD
代码A
=======
代码B
>>>>>>> branch-name
ネイティブの言い回しで日本語に言い換えると、「<<<<<<< HEADは現在のブランチのコード(コードA)で、=======は区切り文字で、>>>>>>> branch-nameは競合ブランチのコード(コードB)を表しています。」
- コードAとコードBを統合するなど、競合ファイルを手動で編集し、コードの保持または統合を選択する。
代码A和代码B合并后的代码
- 保存して閉じる
- git add <ファイルパス> コマンドで修正されたファイルを解決済みにマークする
- git commitコマンドを用いて、競合解決後のコードをコミット
- 同様の競合ファイルがある場合は、上記の手順を繰り返します。
- コンフリクト解消後のコードをコミットした後は、git log コマンドでコミット履歴を表示して、コンフリクトが解決されたことを確認できます。
- コードリポジトリに他のブランチからの更新があれば、git pull コマンドで最新のコードを取得してからコミットします。
コードコンフリクトの解決には注意が必要です。正しいコードロジックにマージされているかを確認してください。また、コンフリクトを解決する前に、他の開発者とコミュニケーションを取って変更内容を把握し、不要なコンフリクトを防ぐことをお勧めします。