하루 기록

[팀플] 다시는 error/warning 메세지를 무시하지 말아라 본문

Today I Learned/in dev

[팀플] 다시는 error/warning 메세지를 무시하지 말아라

떼굴펜 2024. 7. 14. 14:59

에러메세지

./src/hooks/useAllLIkes.ts
There are multiple modules with names that only differ in casing.
This can lead to unexpected behavior when compiling on a filesystem with other case-semantic.
Use equal casing. Compare these module identifiers:

 

언젠가부터 빌드를 하면, 위와 같은 경고 메세지가 떴다.

dev를 올리고 build error가 나지 않아서 일단 무시했는데, vercel을 이용해 배포하니 아래와 같이 Failed to compile 에러가 나더라.

 

처음에는 누군가가 next App router를 사용하면 compile할 때 서버가 안올라가 있어서 compile 에러가 난다고 얘기해줘서, 그 에러인 줄 알았다. (그래서 API server용으로 레포를 뜯고 그 서버에 연결하게 변경했는데도 해결되지 않더라)

 

도대체 왜 Compile 에러가 날까?

1) 폴더 대소문자 문제 (Mainpage -> MainPage2)

폴더 이름이 미묘하게 다르다. Mainpage vs. MyPage

 

 프로젝트 내에 대소문자를 마구잡이로 쓰고 있었고 어디는 import 경로가 MainPage, Mainpage 로 되어 있었다.

정말 compile 에러 였던 것이다 하하하

 그래서 MainPage 로 폴더명을 바꾸니, 이번엔 git이 폴더명의 대소문자를 구분하지 못하는지 commit 이력을 보니 다 new file로 추가해버리는 게 아닌가..? 일단 폴더명을 MainPage2 로 변경해 push 했다.

 

2) 파일 대소문자 문제 (Mainpage -> MainPage2)

 그러고나서 vercel에 build를 새로해보니 아래처럼 에러 메세지가 변경되었다. 기존에 있던 오류는 없어졌나본데?

 

다시 저 파일을 찾아서 경로를 보는데, 여기도 폴더명 + 파일 이이 문제였다. 

PostV'I'ew....
useAllL'I'kes 아

 

다행히 함수 이름은 대소문자가 없었으나 파일명이 문제가 있어, useAllLikes.ts 로 변경했다.

 

 

vercel compile 성공

 

 

 

 

참고) git에서 아래와 같은 명령어로 대소문자를 구분하도록 설정할 수 있다. 플젝 셋팅때마다 써야지. 

git config core.ignorecase false