VSCodeでWeb開発を行っているとき、ファイル名を小文字から大文字に変更したら、Import文に警告が表示されました。
Already included file name ‘src/components/home/HomeHero.js’ differs from file name ‘src/components/home/homeHero.js’ only in casing. The file is in the program because: Imported via “./home/HomeHero” from file ‘src/components/Layout.js’ Root file specified for compilationts(1261)
パス設定は問題なし。
Gitもcore.ignorecaseをfalseに設定しています。
どうやらエディタ(VSCode)の問題のようです。
解決方法 Developer: Reload Window
VSCodeでCtrl+Shift+Pを押してコマンドパレットを開き、Developer: Reload Windowを実行したら解決しました。
今回の問題以外でも、例えば新規ファイルを作成したときなどに、コード補完やシンタックスハイライトが上手く動作しないことがあります。
そんなときは、今回の「Developer: Reload Window」を使って再読み込みしましょう。
おまけ: Gitのcore.ignorecase設定
今回の問題で思い出したのは、Gitのcore.ignorecaseの設定です。
今回の原因ではありませんでしたが、一応メモしておきます。
Web開発でファイル名を小文字から大文字にしたとき、変更がうまく保存されないことがありました。
これはGitが大文字と小文字の区別をしていないため、「index.cs」から「Index.cs」への変更をスルーしてしまうのが原因です。
そんなときはコンソールに下記のコマンドを入力して、Gitに大文字小文字を区別させることで変更を正しく保存できます。
git config core.ignorecase false