github에 올리지 말아야 할 민감한 정보가 담긴 파일이 이미 원격저장소로 올라갔다면 아래의 명령어로 파일 자체를 삭제할 수 있다.
git filter-branch -f --index-filter 'git rm --cached --ignore-unmatch _삭제 할 file명_' --prune-empty -- --all
해당 파일을 지워도 .gitignore
에 파일이 없는채로 push를 하면 다시 원격에 올라가므로 잊지말고 .gitignore
에 추가하여 로컬에만 존재하도록 하자.
git rm --cached -r _삭제 할 file명_
git add .
git commit -m "remove ~~ from git"
git push
git rm --cached -r _삭제 할 file명_
위의 코드에 대해서 풀이를 하자면,