Day 58 · 3/5
🌿 중급 개발도구

Stash가 뭔가요?

쉽게 이해하기

책상에서 작업하다가 급한 일이 생겨서 모든 서류를 서랍에 넣어두는 것과 같아요. 나중에 다시 꺼내서 이어서 작업할 수 있죠. stash는 현재 작업을 잠시 '서랍'에 넣어두고 깨끗한 상태로 만드는 기능입니다.

핵심 정리

Git에서 현재 작업 중인 변경사항을 임시로 저장하는 기능입니다.

자세히 알아보기

stash는 현재 작업 중인 변경사항을 커밋하지 않고 임시로 저장하는 Git 명령어입니다. 작업 중에 급하게 다른 브랜치로 이동해야 하거나, pull을 받아야 하는데 아직 커밋할 단계가 아닐 때 유용해요. `git stash`를 실행하면 현재 수정된 파일들이 모두 저장되고, 작업 디렉토리는 마지막 커밋 상태로 돌아갑니다. 이제 다른 브랜치로 이동하거나 pull을 받을 수 있어요. 나중에 `git stash pop`을 실행하면 저장했던 변경사항이 다시 적용됩니다. 여러 번 stash할 수도 있어요. `git stash list`로 저장된 stash 목록을 볼 수 있고, `git stash apply stash@{0}` 같은 명령으로 특정 stash를 선택해서 적용할 수 있습니다. `git stash drop`으로 필요없는 stash를 삭제할 수도 있죠. 실무에서는 긴급 버그 수정이 들어왔을 때 많이 사용합니다. 새 기능 개발 중이었는데 프로덕션에 버그가 발견되면, 현재 작업을 stash하고 main 브랜치로 가서 hotfix를 만들고, 다시 돌아와서 stash pop으로 작업을 이어갈 수 있어요.