[Git] 특정 커밋에서 파일 삭제

2020. 8. 21. 17:29Git

하... 동국대 서버 비밀번호가 포함된 특정 파일까지 푸시해버려서 난감했다. 커밋 하나하나 다 돌아가서 지우는 방법 말고 다른 방법이 있나 찾아봤더니 있었다.

git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch 파일명' --prune-empty --tag-name-filter cat -- --all
git filter-branch --force --index-filter 'git rm -r --cached --ignore-unmatch 폴더명' --prune-empty --tag-name-filter cat -- --all

파일명은 무조건 깃허브에 올라간 디렉토리 기준으로 경로명을 작성해주어야한다.

사용 예는...

git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch 몽고디비세팅.txt' --prune-empty --tag-name-filter cat -- --all

git filter-branch --force --index-filter 'git rm -r --cached --ignore-unmatch data/' --prune-empty --tag-name-filter cat -- --all

warning 메시지 뜬다고 놀래지말기 기다리면 천천히 됨 ^-^

그리고 꼭 푸시하기!!

git push origin master --force

다음부턴 gitignore를 미리 작성해둔거해야지 .. 조심하자 ㅜ ㅜ

'Git' 카테고리의 다른 글

[Git] git pull/push 에러: refusing to merge unrelated histories  (0) 2020.07.22