본문 바로가기
FE/error

[git] git 파일명 대소문자 구분 error

by s0ojin 2023. 4. 14.

문제 상황


수정된 파일이 있는데 그게 내 컴퓨터에는 없는 파일이고, add도 안되다보니 commit도 안되고, discard해도 삭제되지도 않고...

변경사항이 있다고 +4 가 떠서 안지워지고.... 한 이틀 끙끙거리다가 다른 작업들이 밀려 흐린눈하고 못본척 해온게 벌써 2주 전...;

 

그러다가 백엔드 개발자분이 프론트 한번 확인해보신다고 해서 받으셨는데 같은 오류가 나는것이다.

나는 로컬 깃쪽에 문제가 생겼나했었는데 백엔드개발자 분한테까지 문제가 생겼다니 모른척할 수도 없고 거의 2주만에 다시 이 문제를 마주 보게 되었다...

 

discard를 하면 좌에서 우로 바뀌는 기묘한 현상....처음엔 뭐가 바뀌는지도 모르고 그냥 삭제가 안된다고 생각했는데,

그게아니라 Board->board로 svg파일이름이 바뀌고 있었던 것이다....  

 

처음엔 캐시 문제인가 싶어서 캐시 삭제도해보고 깃으로 추적되지않는 파일들을 삭제해보았지만 전-혀 효과가 없다.

 

develop에서 pull 받은 뒤로 문제가 지속되었는데 이 부분은 내가 만든 부분이 아니라 git에 들어가서 확인해보니 다른 프론트엔드 개발자분이 대문자에서 소문자로 파일명을 변경하신 적이 있으셨던 걸 보니 확실히 이 대소문자에 문제가 있는 것 같다는 확신이 들었다.

 

 

 

해결 방법


찾아보니 git은 원래 대소문자를 구별하지 않는다고 한다. 

git config core.ignorecase false을 입력하면 그뒤로 대소문자를 인식하게 된다! 

캐시가 남아있을 수 있으니 캐시 삭제까지 해주면 파일들이 대소문자 구별되어 정상적으로 처리된다.

$ git config core.ignorecase false
$ git rm -r --cached .
$ git add .

 

나의 경우 로컬/원격에서 파일명이 전부 소문자로 변경되어있었으므로 대문자 파일들은 삭제가 되었다.  

 

 

ㅎ ㅏ.... 그 동안 +4뜬거 무시하며 작업하기 찝찝했는데 깨끗해진 걸 보니 묵은 체증이 다 가신것 같다!!!!!!

 

 

 

 

댓글