현재 브랜치에서 아직 커밋 하짐 못한 파일들이 있는데, 다른 브랜치로 넘어가야 하는 경우현재 브랜치의 변경사항을 잠시 보관할 때 stash를 사용합니다.
stach는 git 저장소에서 관리하고 있는 파일, 첫 커밋이 일어난 대상으로 실행하며 스테이지(staged)에 있는 내용과 들어가지 않은 변경 사항 모두를 저장합니다. 즉, stash를 하면 수행 중이던 작업을 임시 저장하고 가장 최근 커밋 상태로 만듭니다.
추가 명령어를 이용하면 git저장소에서 관리하지 않는 파일도 stash에 넣을 수 있습니다. 실무에서 회사 우선순위에 따라 작성해야 하는 code가 변경되기도 하니 알아두셔야 합니다.
*git stash
명령을 사용하면 Working Directory에서 수정한 파일들만 저장한다.**Modified
이면서 Tracked
상태인 파일**Staged Area
에 있는 파일(Staged 상태의 파일)*<aside>
💡 *Tracked
: git 저장소에서 관리하는 파일 (과거에 이미 commit하여 스냅샷에 넣어진 관리 대상 상태의 파일)
UnTracked
: git 저장소에서 관리하지 않는 파일 (한 번도 add 하지 않은 파일)*
</aside>
$ git stash
$ git stash save <stash에 남길 메시지(별칭)>
$ git stash list