작년에 2주 해커톤 할 때 마음이 급해서 .env 파일을 그냥 올렸던 프로젝트가 있다.
기존엔 프라이빗 리포지토리라서 상관 없었으나 최근에 취업준비하면서 퍼블릭으로 전환하면서 .env 파일을 삭제해야겠다 생각했다
그리고 당연히 히스토리도 지워서 볼 수 없어야겠지
검색하며 + ChatGPT한테 물어보고 진행했던 과정을 공유하고자 한다.(어렵진 않음)
내가 했던 과정은 아래와 같다. 터미널을 실행하는 위치는 로컬의 프로젝트 폴더였다
1. git 에서 .env 를 삭제한다.
git rm .env --cached
git add .
git commit -m ".env 파일 삭제"
git push
#아래에서 .env 를 .env 파일이 있던 경로로 대체하면 된다
#나는 프로젝트 root에 .env가 있어서 아래와 같이 적었다.
git filter-branch --force --index-filter "git rm --cached --ignore-unmatch .env" --prune-empty --tag-name-filter cat -- --all
git push origin --force --all
이렇게하고나면 github에서 .env파일이 처음부터 없었던 것처럼 .env 파일 히스토리가 사라진다