본문 바로가기

DevOps/GIT

[GIT] STASH 복구

[GIT] STASH 복구

 

develop 브랜치에서 작업 중인데, 2.x 버전에 문제가 생겨, hotfix 2.x 브랜치로 전환을 하고 싶은데, 아직 커밋할 수 없는 작업 중인 소스들은 어떻게 하지 ? STASH 는 이러한 상황에서 현재 브랜치에서 작업하던 소스들을 저장하는 명령어

어라... 필요없다고 생각해서 삭제했던 STASH가 실제 사용하던 소스였네??? 아... 다시해야되나 ?

삭제한 Stash List

git fsck --unreachable | grep commit | cut -d ' ' -f3 | xargs git log --merges --no-walk

찾았다! 저 Commit 이야!

삭제한 Stash 복구시키기

git update-ref refs/stash < Commit ID > -m "STASH 이름"

복구해보자!

 

복구한 STASH 가 리스트에 없을 경우

git update-ref refs/stash < Commit ID > --create-reflog -m "다시 저장할 Stash 이름"