지난 포스팅의 전말이다.
gitignore에 .env를 적용해놨지만, 새 브랜치를 만들면서 이그노어에 추가하지 못한 .env파일이 올라가버렸다.
시도했던 방법은 다음과 같다.
1. 깃에서 삭제하기
echo '.env' >> .gitignore
git rm -r --cached .env
git add .gitignore
git commit -m 'untracking .env'
git push origin main
2. 캐시 삭제
git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch .env' --prune-empty --tag-name-filter cat -- --all
이 때, 파일 경로 명을 ./~ 부터 잘 적어줘야한다.
3. 재업로드
git add .
git commit -m ":fire Delete : GoogleService-Info.plist from history"
git push origin --force --all
★주의할 점
해당 작업을 실행하면, .env를 올린 시점부터의 이후 커밋은 사라진다. 그 말은 즉슨, 세이브본도 같이 사라진다는 말이다.
원하는 작업이 남아있는 경우, 복사본을 만들고 실행하는 것을 추천한다.
해당 작업은 작업을 실행한 브랜치에만 해당되고, 타 브랜치에는 해당되지 않기 때문에 merge를 강행했다면,,,,(슬픈 혹자 이야기)
나의 경우는 해결하지 못해 복사본을 만들고 전 포스트의 단계를 수행했다.
이 글을 보고 있는 여러분은 merge시 잘 확인하고 해당 단계만 거치기 바란다.
'GITHUB' 카테고리의 다른 글
[GitHub]패키지 매니저 변경(Yarn -> NPM) (0) | 2024.07.03 |
---|---|
[GitHub]git pull이 안 될때 조치법 (0) | 2024.07.01 |
[GitHub]push 충돌시 강제 해결법 (0) | 2024.03.31 |
[Github].env파일이 포함된 채로 merge 되었을 때 조치법 (2) | 2024.01.30 |
[GITHUB]How to commit to a github repository (0) | 2023.07.24 |