git stash란?
📄 stash란?
working directory에서 작업 도중 깃 history에 저장하지 않고도 작업 내용을 저장해 놓을 수 있는 보관소를 뜻합니다.
임시보관소로 생각하면 이해하기 편합니다.
📄 stash stack에 파일을 push하기
▪ git stash
파일을 stash stack에 push합니다.
▪ git stash -m "타이틀"
타이틀을 지정해 stash stack에 push합니다.
이렇게 파일들을 stash하게 되면 working directory와 staging area에 파일이 남지 않게 됩니다.
▪ git stash push -m "타이틀" --keep-indext
만약 staging area에 있는 것을 유지하면서 stash에 저장하고 싶을 때 위와 같은 명령어를 입력하면 작업하던 내용이 유지가 됩니다.
📄 untracking 파일 stash하기
tracking되지 않은 파일은 자동으로 stash에 저장되지 않습니다.
▪ git stash -u
위와 같은 명령어를 입력하면 모두다 stash stack에 들어가게 됩니다.
📄 stash 이력 확인하기
▪ git stash list
위와 같은 명령어를 입력하면 stash stack을 확인할 수 있습니다.
▪ git stash show (stash 아이디)
stash list에서 확인할 수 있는 stash아이디를 입력하면 각각 stash에서 어떤 것이 수정되었는지 확인할 수 있습니다.
만약 powershell 사용자라면, 따옴표를 추가하여 `git stash show “(stash 아이디)”으로 입력해야합니다.
▪ git stash show (stash 아이디) -p
p라는 옵션을 이용하면 더 자세한 내용을 확인할 수 있습니다.
📄 stash 에서 다시 가져오기
▪ git stash apply
stash stack의 가장 위에 있는 부분을 working directory에 가져옵니다.
목록은 그대로 유지됩니다.
▪ git stash apply (stash 아이디)
특정한 stash를 적용하고 싶다면 stash 아이디를 지정하여 명령어를 입력해 주면 됩니다.
▪ git stash branch (브랜치 이름)
stash를 적용하면서 새로운 브랜치를 만들게 됩니다.
▪ git stash pop
stash stack의 가장 위에 있는 부분을 working directory에 가져옵니다.
가지고 나온 stash는 목록에서 삭제됩니다.
📄 stash 삭제하기
▪ git stash drop (stash 아이디)
특정 stash를 삭제합니다.
▪ git stash clear
전체 stash를 삭제합니다.
Leave a comment