-
Git 특정파일 히스토리 삭제Git 2022. 6. 1. 23:18반응형
비밀번호 , DB 정보 등 보안에 취약한 정보가 Repository에 공유되었을 때 어떻게 해야 할까요?
빠르게 해당 정보를 수정하게 되더라도 Commit 내역에 수정됨이 기록됩니다.
이렇게 되면 그대로 소중한 정보가 노출되는데 어떻게 해결해야 할까요?
다음은 Git 특정 파일 히스토리를 삭제하는 명령어입니다.
git filter-branch -f --index-filter 'git rm --cached --ignore-unmatch 삭제하고자하는 file명' --prune-empty -- --all
이때 만약에 에러가 발생한다면 unstaged된 파일들이 있는지 commit 되지 않은 파일들이 있는지 확인하여 push 해주어야 합니다.
해당 명령어를 통해서 강제 push 를 하게 되면 remote 역시 해당 file의 history 가 삭제됩니다.
git push --force --all
주의할 점은 해당 파일이 삭제되면서 히스토리가 모두 날아가므로 복사해서 가지고 있으면 좋을 것 같습니다.
출처
https://jjjoonngg.github.io/git/Git-History/
Git History 에서 특정 파일 삭제하기
Git 을 사용하다가 보면 private 일 경우에도 remote 에 올리지 말아야할 file 혹은 folder 가 존재 할 수 있다.
jjjoonngg.github.io
'Git' 카테고리의 다른 글
Git 커밋 메시지 컨벤션 (0) 2022.06.20 Git branch 전략이란? (0) 2022.06.16 [Git] 소스 트리 다운로드 및 설치 (0) 2022.04.26 Git이란? (0) 2022.03.20 .gitignore 란 무엇인가? (0) 2022.03.10