(git submoduleの)Not a git repository のエラー解消

gnupackの.emacs.dディレクトリをgitで管理していて、gnupackのアップデート時には、.emacs.dをまるごと移動させて(.gitを含めて)設定ファイルをアップデートという方法を今はしてる。


これをしたら、haskell-modeとmulti-web-modeが、前のディレクトリのパス設定を引きずってしまって Not a git repository のエラーを引き起こしてた。


git statusすらできなくなってたのでさてどうしたものかと思って、rmしたらgit statusができるようになった。本当はもっといい方法があるんじゃないかと思うけど調べてもよくわからなかった。

$ rm plugins/haskell-mode
$ rm plugins/multi-web-mode


このままだとsubmoduleのディレクトリが消えてしまってるから、

$ git checkout -f plugins/haskell-mode
$ git checkout -f plugins/multi-web-mode

をして変更をもとに戻せば大丈夫。


これでエラーは解消できた。