개발일지/Git

[git] 실수로 삭제한 브랜치 복구하기 (reflog)

zineeworld 2024. 2. 15. 09:11
반응형

금융권에서 일하다보니까 인터넷망에서 작업하고, 망간 전송을 시켜서 시스템망(내부폐쇄망)에 완성된 코드를 올린다. 이렇게 작업하다보면 양쪽 레포에 동일하게 관리를 해야하는데 일이 많다보니 정신이 없어서 시스템망에는 잘 올렸는데, 인터넷망의 로컬 브랜치를 리모트 푸시를 안하고 그냥 다 지워버렸다. 순간 멘붕이 와서 멍 때리고 있다가, git 에는 분명 복구방법이 있을 것 같아서 찾아봤다.

 

 

git reflog

git reflog

 

이렇게 지난 로그가 나온다. 

 

// branch 복구
git checkout -b 삭제된 브랜치 이름 HRAD@{INDEX}

// commit 복구
git reset --hard COMMIT-ID

 

 

 

 

참고

https://7942yongdae.tistory.com/161

 

Git - 삭제한 branch 혹은 commit를 복구하는 방법

이번에는 삭제한 branch나 commit를 복구하는 방법에 대해서 알아보겠습니다. 개발을 하다 보면 생각지 못한 실수로 branch나 commit를 삭제하는 경우가 있습니다. 이런 경우 생각보다 어렵지 않은 방

7942yongdae.tistory.com

https://git-scm.com/docs/git-reflog

 

Git - git-reflog Documentation

git-reflog - Manage reflog information

git-scm.com

https://kotlinworld.com/303

 

[Git] reflog를 활용한 삭제된 브랜치 복구 방법

reflog란? reflog란 git에서 가리키는 referenced commit이 변경된 내역이다. reflog를 기록하는 것은 대표적으로 HEAD와 branch 두가지이다. HEAD의 reflog HEAD의 reflog 경우 새로운 커밋이 생기거나, branch가 switch

kotlinworld.com

 

반응형