[Git] 특정 파일/폴더 commit 기록 전부 삭제하기

vSsongv·2023년 5월 12일
0

Git

목록 보기
8/8
post-thumbnail

특정 repo에서 특정 폴더를 history를 포함해 모두 삭제해야 하는 상황이 생겼다. filter 명령어를 사용하면 특정 폴더/파일을 history를 포함해 원격 repo에서 모두 삭제할 수 있다는 것을 알 수 있었고, 방법을 공유하고자 한다. 여러 가지 명령어들이 있었는데 이 명령어가 제일 확실했다.

아래 명령어를 이용하면 된다.

git filter-branch --force --index-filter 'git rm -r --cached --ignore-unmatch {폴더일 경우 : forder_name/ 파일일 경우 : file_name.ext}' --prune-empty --tag-name-filter cat -- --all

파일일 경우 파일이름.확장자 형태로 작성해주면 되고, 본인은 폴더 전체를 삭제했어야 했으므로 폴더이름/ 으로 작성해줬다.


명령어가 잘 동작하면 사진처럼 rm으로 git이 해당 폴더/파일을 찾아 삭제해준다. 삭제가 잘 되었다면 해당 내용을 repo에 commit해주면 삭제하고자 했던 폴더/파일이 history까지 깔끔하게 삭제된 것을 확인할 수 있다!

profile
wanna be bright person✨ Front-End developer

0개의 댓글