謎な現象に出会いました。
nextプロジェクトをビルドしようとしたのですが、
以下のエラーが発生しました。(ファイル名はちょっと変えてます)
info - Need to disable some ESLint rules? Learn more here: https://nextjs.org/docs/basic-features/eslint#disabling-rules
info - Linting and checking validity of types ..Failed to compile.
./src/pages/xxx.tsx
Type error: File name 'C:/xx/types/SearchRequest.ts' differs from already included file name 'C:/xx/types/searcRequest.ts' only in casing.
The file is in the program because:
Root file specified for compilation
Imported via "../types/SearchRequest" from file 'C:/xx/pages/planForm.tsx'
> 24 | import { SearchRequest } from "../types/SearchRequest";
compilation 、、、
競合?
よく見てみると、、、
ソース上から参照しようとするファイル名 SearchRequest
実際のファイル名 searchRequest
・・・
・・・
先頭のsが大文字と小文字だ!
どうも、他の人が修正したとき、ファイル名を直したそうです。
でも直した情報のうち、ソースの内容はコミットされ
ファイル名変更がgitにのらなかったらしく、不整合が起きているようでした。
こちらを参考に、修正者の設定を変更してもらい、
念のため私の環境も変更しました。
sourcetreeがファイル名の変更を検知しないのでignorecaseをfalseにする
これでエラーも出なくなり一安心。