쿨하게 완성된 브랜치 날린 사람(해결한 사람도 나)

const job = '프론트엔드';·2025년 10월 26일
0
post-thumbnail

사건의 시작

프로젝트 중간에 브랜치를 정리하기로 했고, 한 명이 정리하는게 편하겠다 생각해서 삭제가 필요한 브랜치 목록을 받았다.

사건의 발생


작업은 완료했는데, 아직 개발에 올라가지 않은 브랜치를 날렸다.
그리고 그 다음날 퇴근 직전에 뭔가 쎄함이 느껴졌다.

사건 해결

reflog를 해서 확인

git fsck --no-reflogs --lost-found

이거로는 확인이 어려움 커밋 아이디를 모르기 때문

git reflog

커밋메세지를 확인하자! (과거의 내가 커밋메세지를 잘 써놨길 믿자)

역시 과거의 나는 커밋메세지를 잘 써놨다.
그럼 이제 복구만 하면된다.

main 브랜치에서
git checkout -b gy0912_file {commitID}

사실 이상한 커밋로그로 돌아가서 몇번의 시행착오가 있긴 했는데
쉽게 커밋메세지를 찾은 것 같지만 저 브랜치에서 17번의 커밋메세지가 있는 것을 복구 후에 나중에 확인했다.
어디가 마지막 커밋인지 확실하지 않아서
중간중간 계속 멘붕이었다.
이미 위에 명령어로 특정 커밋상태로 돌아갔는데, 아니다? reset으로 바꾸면 됨

git reset --hard {commitID}

아무튼 성공했다.
오늘은 월요일이고, 금요일 퇴근(퇴근 4시) 직전에 저걸 발견해서 찝찝한 주말을 보냈지만 복구했다.

profile
`나는 ${job} 개발자`

0개의 댓글