git stash는 작업 복사본에 적용한 변경 사항을 일시적으로 저장(또는 스태시)하여 다른 작업을 하다가 다시 돌아와서 나중에 변경 사항을 다시 적용할 수 있도록 합니다. 스태시는 컨텍스트를 빠르게 전환하고 다른 작업을 수행해야 하지만, 코드 변경을 진행하고 있고 커밋할 준비는 되지 않은 경우 편리합니다.출처 ATLASSIAN
쉽게 말하면 현재 작업중인 코드를 일시적으로 저장하는 방법 중 하나.
컨텍스트를 빠르게 전환하고 다른 작업을 수행해야 하지만, 코드 변경을 진행하고 있고 커밋할 준비는 되지 않은 경우 편리합니다. 입니다.
현재 코드 작성 중 다른 사람의 PR 혹은 여러가지 이유로 다른 브랜치로 이동하려고 하면 아래와 같은 문구가 나타납니다.

commit을 하기에는 현재 작성중인 코드가 완성되지 않았기에 임시 저장 용도로 stash를 사용합니다.
git stash save 'stash message'git stash list 저장 후 다른 branch로 이동 가능합니다.

다시 stash 저장된 코드 불러오는 방법
git stash apply
stack 자료구조로 가장 마지막에 저장된 코드가 가장 최신으로 저장됩니다. 
git stash list : stash된 list 목록 확인
git stash show : stash 된 코드 미리보기
git stash show -p : 좀 더 구체적으로 보려면 -p 옵션을 추가해줍니다.
git stash pop : 가장 최근 stash 불러오기 && stash에서 제거
git stash apply : 가장 최근 stash 불러오기 && stash에 저장
git stash save : stash에 코드 저장
git stash clear : stash에 저장된 코드들 모두 제거
stash를 사용할 때만 해당되는 내용은 아니지만, 실제로 stash 한 뒤 코드를 불러왔는데, 작업중인 코드가 사라진 경우가 있었습니다. 😭😭😭😭😭😭😭😭
그 문제는 바로 저장하지 않은 뒤 stash를 한 경우 입니다.
코드를 작성합니다.
git add . 명령어를 통해 stage area로 이동합니다.
git stash save '중요한 코드 저장' 명령어를 통해 stash에 저장합니다.

git stash apply 명령어를 통해 stash에 저장한 코드를 불러옵니다.
아래와 같이 파일은 있는데 코드가 사라지는 아주 큰 문제가 발생할 수 있으니 stash 하기 전 반드시 저장했는지 여러번 확인 해야합니다.🚨
