·터미널 명령어

git stash

git

쓰는 꼴

git stash [push] [-u] [-m "<message>"]

고치던 것을 잠시 치워 두고 깨끗한 상태로 돌아갑니다 — 기본으로는 추적되지 않은 파일이 그대로 남으니 -u를 붙이고, pop은 꺼내면서 목록에서 지우고 apply는 남깁니다.

자주 쓰는 옵션

옵션
-uinclude untracked files, which are otherwise left behind
-ainclude ignored files too
-kkeep the staging area as it is
-pstash selected hunks
popapply the newest entry and delete it
applyapply it and keep the entry
listshow the entries
drop <stash>delete one entry

예시

git stash -u -m "wip login"

parks tracked and untracked changes under a name

git stash pop

brings the newest stash back and removes it from the list

git stash apply stash@{2}

applies an older entry and leaves it in the list

되돌리는 방법이 여럿이라 헷갈립니다 — 가리키는 곳을 옮기는 것과 새 커밋을 얹는 것은 다릅니다.

읽는 방법

  • 대괄호 [ ]는 넣어도 되고 안 넣어도 되는 자리입니다.
  • 점 셋 …은 여러 개를 이어 쓸 수 있다는 뜻입니다.
  • 옵션은 대소문자를 가립니다 — -r과 -R이 다른 명령도 있습니다.

자주 묻는 것

Q. git stash은 무엇을 하나요?

고치던 것을 잠시 치워 두고 깨끗한 상태로 돌아갑니다 — 기본으로는 추적되지 않은 파일이 그대로 남으니 -u를 붙이고, pop은 꺼내면서 목록에서 지우고 apply는 남깁니다.

Q. 어떻게 치나요?

git stash [push] [-u] [-m "<message>"] — 대괄호는 생략할 수 있는 자리입니다.

Q. 옵션은 몇 개나 자주 쓰나요?

여기 정리한 것은 8개입니다. 전체 목록은 man git에 있습니다. 이 명령은 git 갈래입니다.

같이 보는 명령

man 페이지: man git-stash