
문제
github에서 삭제되었다고 전달받은 브랜치가 git fetch를 해도 남아있었습니다.
아니 git fetch 하면 다 최신화 아니냐? 어이없네 하면서 0과 1밖에 모를놈 따위에게 예민하게 굴었는데요!
좀 알아보니까 이유를 발견했습니다.
원인
이유는 origin에 올렸던 reference 값은 fetch를 하더라도 남아있어서였습니다.
fetch는 원격의 새로운 변경사항은 가져오지만, 삭제된 브랜치의 로컬 참조는 자동으로 제거하지 않기 때문입니다.
해결
prune 이라는 "가지치기" 뜻을 가진 명령어를 사용해주면 해결됩니다.
# prune(가지치기 명령어)를 사용
git fetch --prune origin
# 짧게도 가능
git fetch -p origin
자동으로 fetch 할 때 마다 같이 되게 하는법은 다음과 같습니다.
git config --global fetch.prune true
이렇게 오늘도 이슈 하나 해결했습니다!
'개발 > 개발 일지' 카테고리의 다른 글
| 리액트 구버전 실행 시 Node 17+에서 발생하는 error:0308010C 에러 해결 (0) | 2025.09.25 |
|---|---|
| next.js 버전 업데이트하면서 알게 된 pnpm add / up 차이 (0) | 2025.09.02 |