본문 바로가기
Git

Git은 대소문자 구분을 안해줘!

by g2hans 2021. 4. 6.

1. 로컬의 수정된 파일이름이 제대로 적용이 안된 github

프로젝트를 진행한 브랜치를 github page를 이용하여 배포하려고 했는데,

분명 vscode live-server로 잘만 되었던 프로그램이 다 깨져서 보이는 것이다..!

 

전부 제대로 push 했고, 더이상 바뀐게 없다고 하길래 개발자 도구를 통해서 오류를 찾아보았다.

(feat. 왜인지는 모르겠지만, 크롬은 오류가 정확히 어디서 났는지 안알려줄 때가 있어서 사파리 브라우저를 통해 봐야할 때가 있다)

 

LottoRanksController.js 를 lottoRanksController.js로 수정했는데,

로컬의 코드에서는 제대로 적용되었지만 github에는 적용이 안된 상태로 파일이 올라가 있었다.

처음에 생각한 방법은 무식하게 파일을 지우고 새로 만들어서 다시 푸시할려고 했는데, 우리의 빛키가 자신의 블로그를 참고하라고 알려주었다.

 

2. 해결방법의 여정

참고 블로그 1

 

파일명 대소문자 인식에 대한 고민

파일명을 파스칼 케이스로 쓰고 있다가파일명 대소문자 인식(case sensitive) 관련 문제로 webpack --watch 가 동작하지 않는 상황에 직면해서 3시간을 날린 나를 위한 글이다.. 😥내가 쓰는 window 10의 파

velog.io

 

빛키의 블로그에서 보면,

git은 기본 세팅이 대소문자를 무시하는것으로 되어 있어서

아래와 같이 직접 파일명이 변경 된 것을 알려주면 된다고 한다.

git mv fooBar.js FooBar

 

그래서 바로 적용을 했는데,

fatal: bad source, source=LottoRankController.js, destination=lottoRankContorller.js와 같은 에러가 뜨는게 아닌가..!

첫번째 마주한 에러

 

그래서, 다른 블로그에서 저 에러가 뭔지 찾아보았더니, 명령어를 해당 directory에 가서 입력해야 한다는 것이었다.

참고 블로그 2

 

[git린이탈출기] 폴더이름 변경하기

이슈가 생긴 정황 vscode에서 폴더이름을 변경하였다. github에 전-혀 반영되지 않았다. 이것은 내가 저번에 작성한 대소문자 이슈구나! 그래서 게속 소문자로 남아있구나. 그렇다면 git을 이용하자.

velog.io

 

 

이렇게 하면, 파일의 오른 쪽에는 수정의 표시인 M 대신 R이 보이고, 터미널에서도 더이상 오류 메세지가 보이지 않는다.

다시 git add -> commit -> push를 하게 되면 아래와 같이 성공적으로 github에서도 적용이 된다.

 

 

3. 정리

대소문자를 바꾼 파일을 push한 것이 제대로 적용이 안되었다면,

git mv [기존 파일명] [새로운 파일명]을 통해서 해결할 수 있다.

이때, 해당 directory에서 명령어를 입력해야 한다.

 

4. 기타

만약 그래도 적용이 안된다면, 아래의 블로그 방법도 참고하면 좋을 것 같다.

바로 적용이 되어서 아래의 방법을 시도하지는 못했다.

참고 블로그 

 

Git Directory 이름 변경

Git Directory 이름 변경 Algorithm repo 에서 디렉토리 이름을 변경할 필요가 생겼습니다. 별거 아닌 이유지만 boj -> BOJ  로 leetcode -> LeetCode  로 변경하고 싶었습니다. 우선 Github 에서 디렉토리 이..

bcp0109.tistory.com

 

댓글