🚘
【Git】Submoduleのコンフリクト解消方法
はじめに
普段Gitの操作をVSCode上で行っているため、Submoduleのコンフリクト解消がわからず苦労したので、その解消法をメモとして残しておきます。
基本的にコマンドライン上で直接処理することが可能です!
解消法
Gitのサブモジュールでコンフリクトが発生した場合、以下のステップで解消を図ります。
- コンフリクトが発生しているサブモジュールの特定
最初に、どのサブモジュールでコンフリクトが発生しているかを確認します。
git status
- サブモジュールのコンフリクト解消
次に、以下のコマンドを使用してサブモジュールのコンフリクトを解消します。
git reset HEAD <submoduleの相対パス>
これにより、サブモジュールの状態が最後にコミットされた状態にリセットされます。
- サブモジュールのブランチ切り替え
コンフリクトを解消した後、サブモジュールを適切なブランチに切り替えます。
cd <submoduleの相対パス>
git checkout <コミットしたいブランチ名>
cd -
このステップにより、サブモジュールは必要なブランチに正しく配置されます。
終わりに
これ以外にも、様々なコンフリクトの解消方法があると思います。実際に使用する際はプロジェクトやチームのニーズに応じて、他の方法やツールを探索することも重要です。
参考
Discussion