프로그래밍/Git

[Git 명령어] git stash 완전 정복하기 (apply, drop)

분석벌레 2025. 12. 11. 11:14
728x90
Git · 입문자용

🧺 Git Stash 완전 정복

Git stash는 현재 작업 내용을 커밋하지 않고 잠시 보관해두는 기능입니다. 초보자도 이해할 수 있도록 개념과 apply/pop/drop/clear 활용법까지 정리합니다.

#git #stash #apply #pop #drop

1️⃣ Git Stash란?

현재 작업 내용을 커밋하지 않고 잠시 치워두는 기능입니다.
“작업 중인데 브랜치를 바꿔야 한다!” 같은 상황에서 매우 유용합니다.

즉, 변경사항을 “임시 보관함”에 저장해 두었다가 나중에 다시 꺼내 쓰는 기능입니다.

2️⃣ 기본 사용법

✔️ 변경 내용 임시 저장

git stash

✔️ 메시지를 포함해 저장

git stash push -m "WIP: 로그인 버튼 수정"

✔️ stash 목록 확인

git stash list

3️⃣ stash 적용하기

✔️ 적용만 하고 stash는 남겨두기

git stash apply stash@{0}

가장 최근 stash 적용

git stash apply

4️⃣ 적용 + 제거(pop)

✔️ pop (apply + drop)

git stash pop

특정 stash pop

git stash pop stash@{2}

5️⃣ stash 삭제(drop)

git stash drop stash@{1}

가장 최근 stash 삭제

git stash drop

6️⃣ stash 전체 삭제(clear)

git stash clear

⚠️ 한 번 지우면 복구할 수 없습니다.

7️⃣ 자주 쓰는 시나리오

📌 브랜치 이동해야 할 때

git stash
git checkout main

📌 작업 복귀

git checkout 작업브랜치
git stash pop

📌 여러 stash 중 원하는 것만 적용

git stash list
git stash apply stash@{2}

8️⃣ 요약 표

기능 명령어 설명
stash 저장 git stash 변경사항을 임시 보관
stash 적용 git stash apply stash를 적용, 목록에는 남김
stash 적용 후 삭제 git stash pop apply + drop 기능
특정 stash 삭제 git stash drop stash@{n} n번째 stash만 삭제
전체 삭제 git stash clear 모든 stash 제거