github 커밋 히스토리에서 application.yml, application.properties 같은 중요파일 모두 삭제하기

Miin·2024년 1월 24일
0

Spring

목록 보기
17/17

프로젝트를 진행하면서 깃 저장소를 그냥 private으로만 두고 모든 파일을 마음껏 올려두었었는데.. 나중에 public으로 돌리려하니 중요 키 값과 개인정보가 남아있는 application.yml 파일과 application.properties 파일을 삭제해야 하는 상황이 왔다. 해당 파일들을 삭제하였지만, 문제는 커밋 히스토리에는 계속 남아있다는 것이었는데, 이를 지금부터 해결해보고자 한다.


git filter-branch -f --index-filter "git rm --cached --ignore-unmatch ./src/main/resources/application.yml" --prune-empty -- --all

git filter-branch -f --index-filter "git rm --cached --ignore-unmatch ./src/main/resources/application.properties" --prune-empty -- --all


이처럼 경로명과 함께 파일명을 작성해주면, rewrite가 진행되는 것을 볼 수 있고, 이를 기다려주면 끝이다.

그러나 ./build/resources/main/ 해당 경로에도 파일이 남아있기 때문에 다음과 같은 코드를 추가로 작성해 주어야 한다.

git filter-branch -f --index-filter "git rm --cached --ignore-unmatch ./build/resources/main/application.yml" --prune-empty -- --all

git filter-branch -f --index-filter "git rm --cached --ignore-unmatch ./build/resources/main/application.properties" --prune-empty -- --all


이러면 진짜 끝

정말 마지막으로 push를 해주면 된다

git push --force --all


오랜 노고 끝에 깃 커밋 히스토리에서 yml, properties 파일 지우기 성공!


참고:

https://velog.io/@andkjyk/github-%EC%BB%A4%EB%B0%8B-%ED%9E%88%EC%8A%A4%ED%86%A0%EB%A6%AC%EC%97%90%EC%84%9C-%ED%8A%B9%EC%A0%95-%ED%8C%8C%EC%9D%BC%EC%9D%98-%ED%9E%88%EC%8A%A4%ED%86%A0%EB%A6%AC-%EB%AA%A8%EB%91%90-%EC%82%AD%EC%A0%9C%ED%95%98%EA%B8%B0

profile
컴퓨터공학전공 학부생 Back-end Developer

0개의 댓글