본문 바로가기
TIL/Git

[Git] node_modules 잘못 올렸을 때!! Git 특정 커밋 history 기록 삭제 하기

by VANAV 2024. 3. 12.

Github에 실수로 node_modules를 올렸을 때 대처법

 

 

 

Introduction

개인 프로젝트를 하는데 초기 세팅중에 실수로 github에 node_modules를 통째로 올려버리고 말았다 😫

 

구글링을 해보니 내가 commit - push해 이미 repository에 올라간 파일도 지울 수 있다고 한다.

그리고 파일을 지우고 나서 git에 남아있는 기록들 (내가 파일을 올렸었다는 기록, 커밋 기록)도 지워서

파일 history 까지 열람할 수 없게 하는 것도 가능했다.

 

이렇게 커밋 로그에서 보이는 히스토리까지도 지울 수 있다는 거다!

 

이번 경험으로 중요한 파일(가령 env 파일)을 실수로 git에 push 했을 때 이렇게 수습하는구나 하고 알게 되기도 했다.. 😅

그래도 애초에 이런 실수를 하지 않도록 .gitignore 설정을 잘 하도록 하자 😂

나처럼 대충 하려다가 일케 되지 말기를..

 

😎 .gitignore 자동 생성 사이트

https://www.toptal.com/developers/gitignore

 

gitignore.io

Create useful .gitignore files for your project

www.toptal.com

JavaScript로 프로젝트를 하면 Node.js로 검색해서 파일을 받으면 된다.

 


 

Solutions

만약 나처럼 node_modules를 이미 repositiory에 올렸고, 그걸 지우고 싶다면 이 명령어를 차례로 실행하면 된다.

git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch ./node_modules -r option' --prune-empty --tag-name-filter cat -- --all

 

git push --force --all

 

참고한 글 : https://jihyuns-today.tistory.com/entry/Git-%EC%8B%A4%EC%88%98%EB%A1%9C-%EC%98%AC%EB%A6%B0-env-%EC%82%AD%EC%A0%9C%ED%95%98%EA%B8%B0-commit-history%EA%B9%8C%EC%A7%80-%EC%99%84%EC%A0%84-%EC%82%AD%EC%A0%9C

 

[Git] 실수로 올린 env 삭제하기 (commit history까지 완전 삭제)

git에 env 파일을 실수로 올려버렸다. 최근 사용한 프로그램은 돈이 나가는 프로그램이라 env 파일을 빨리 삭제해야했다. 그래서 검색해보니 명령어는 다음과 같았다. git rm .env --cached git add . git com

jihyuns-today.tistory.com

 


 

Conclusion

나는 npm init을 하고, npm i(install)을 하고, .gitignore을 설정하는 과정에서

node_modules를 실수로 올려버렸다 😑

 

돈들어가는것도 아니구... 혼자서 재미로 하는 프로젝트라 남겨놔도 별일은 없을거 같았지만

방법도 터득할 겸 뭔가 찝찝해서 굳이 찾아서 지워봤다!!

이렇게 오늘도 하나 경험한다...

댓글