1. 문제 발생
평화롭게 작업하고 있던 중 git pull origin main
명령어를 입력하니 아래와 같은 오류가 떴다. 한 시간 전만 해도 잘되던 게 갑자기 이러는 걸 보면 그새 내 잘못으로 인해 참조(refs)가 손상되었나 보다. 이 에러를 한두 번 겪은 게 아니라 금방 해결했지만 항상 이슈가 발생할 때마다 금붕어처럼 또 찾아보게 돼서 결국 작성한다.
2. 해결 방법
1. 손상된 참조 수정 및 제거
rm -rf .git/refs/remotes/origin
2. 저장소 다시 가져오기
git fetch origin
3. 해결 완료!
원격의 main
branch를 가져옴으로써, 정상적으로 git pull origin main
명령어가 실행되는 것을 확인 가능했다.
3. 결론
나는 위와 같은 방법으로 해결했지만, 위 방법만으로 해결되지 않는다면 아래 레퍼런스를 참고하는 게 좋다. 정말 많은 해결 방법이 존재하고, 해결 방법에 뒤따라오는 에러들도 있더라. 정말 다양한 사례와 에러 메시지가 스레드에 남겨져 있다.
REFERENCE
How to handle git gc fatal: bad object refs/remotes/origin/HEAD error?