사이드 프로젝트를 진행하면서 github에 소스를 올리면서 중요한 코드를 삭제하지 않고 올렸다는 사실을 알게되었다.
github에서 commit 내역을 모두 지워야하는 상황... 띠로리
방법은 git filter-repo 도구 또는 BFG Repo-Cleaner
오픈 소스 도구를 사용할 수 있는데 git filter-repo가 더 간단해보여서 이걸로 선택하였다.
삭제할 내용이 포함된 파일을 백업한 다음, 아래와 같은 명령어를 입력해준다.
git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch 삭제할 파일의 전체경로' --prune-empty --tag-name-filter cat -- --all
git ls-files
git push origin --force --all
그리고 나면 해당 파일이 전부 삭제되어 있다!