git submoduleの正しい削除方法
結論 以下2点が重要 .gitmodulesを触らない オリジナルリポジトリのgit履歴からも削除 方法 サブモジュール自体を削除する場合は.git/modules/<submodule_name>/も削除する必要がある .gitmodulesからも消えないのはgit rm -rでサブモジュールを削除していないから # サブモジュールを解除 $ git submodule deinit submodule-A Cleared directory 'submodule-A' # git履歴から削除(※これ重要で.gitmodulesから消えてくれる) $ git rm -r submodule-A/ # .git以下からも削除(※これ重要。面倒くさい) $ rm -rf .git/modules/submodule-A 正しく削除できていない時に発生するエラー その1 'submodule-A' already exists in the index その2 "submodule" already exists in the index