formulous

주니어 개발자의 개발 지식 공유 블로그입니다.

Git

[git] 커밋 복구, 브랜치 복구 reflog 명령어에 대해 알아봅시다.

formulous 2023. 1. 22. 23:18

 

안녕하세요.

 

오늘은 git reflog 명령어에 대해 알아볼게요.

 

git 커밋을 관리하다 보면 의도해서든 의도하지 않아서든 git rebase 또는 git reset 등으로 커밋이 삭제될 수 있는데요.

 

이럴 때 커밋은 즉시 삭제되지만 커밋이 삭제된 이력은 보관되게 됩니다.

 

여기서 보관된 이력 정보를 확인할 수 있는 명령어가 바로 git reflog입니다.

 

 

git reflog 명령어로 이력을 확인했다면, 확인한 이력 정보를 사용해야겠죠?

 

git reflog 명령어로 삭제된 커밋 아이디를 확인한 후, git reset --hard [커밋 아이디] 명령어로 삭제한 커밋을 복구할 수 있습니다.

 

 

브랜치 또한 마찬가지인데요.

 

git reflog 또는 git reflog | grep [브랜치명]으로 이력을 확인하고

 

git checkout -b [삭제한 브랜치명] [커밋 아이디] 명령어를 통해 브랜치를 복구할 수 있습니다.

 

 

이렇게 오늘은 삭제한 커밋, 브랜치에 대한 이력을 확인하는 명령어 git reflog에 대해 알아보았습니다.

 

git reflog 명령어 자체가 복구 명령어라고 알고 계신 분들이 많은데, 해당 명령어는 단지 이력을 확인하는 명령어라는 것 알아두시길 바랍니다.

 

 

오늘 글은 여기까지입니다.

 

감사합니다.