본문 바로가기
DEVELOPMENT

git ignore 안될 때!! (node_modules 제거)

by Z@__ 2021. 3. 23.
반응형

 

npm을 사용할 때,  package.json에는 의존하는 패키지 리스트가 나와있고

 

npm install을 통해 필요한 패키지들을 받아서 사용하게 된다.

 

이 패키지들은  node_modules라는 폴더에 설치가 되는데...

 

수 많은 파일로 이루어져있어 원격저장소에 올리지 않는 게 일반적이다.

 

 

 

node_modules를 올리지 않으려면 .gitignore이라는 파일에서 관리하게 되는데,

 

이미 node_modules를 올렸다면 아무리 .gitignore에 넣어도 사라지지 않는다.

 

 

 

왜냐하면 .gitignore은 commit하는 당시에 해당 파일을 트래킹할지 말지를 정하는 건데...

 

이미 올라간 파일에 대해선 트래킹을 하지 않아도 이미 올라간 상태로 남아있기 때문에 소용이 없다.

 

 

그래서 실수로 올린 node_modules를 지워야 한다.

 

 

git rm  :  원격, 로컬 저장소 모두 삭제

git rm --cached : 원격 저장소에서만 삭제

 

 

로컬에서는 node_modules가 필요하기 때문에

 

git rm --cached -r node_modules 이렇게 해주면 된다. (-r은 하위 폴더에도 적용하겠다는 옵션이다.)

 

 

이렇게 지우고 나서 commit -> push를 하면 정상적으로 지워진 것을 확인할 수 있다.

 

반응형

댓글