git stash 란?
작업내용을 임시로 따로 저장해놓을 수 있는 기능이다.
이 기능을 알기 전과 알고 난 후의 git 활용 능력에는 큰 차이가 있다.
git stash 언제 사용하지?
내가 실제로 git stash를 쓰는 상황은 다음과 같다.
- A브랜치에서 작업 중 다른 브랜치로 이동이 필요한 상황, 커밋하기는 부담스러울 때
- 작업중 pull을 받아야 하는 상황에 안전하게 받기 위해서
- 작업 중 새로운 방식으로 테스트를 위해 잠시 백업 용도
git stash 명령어
▷ git stash
작업 내용을 임시 저장한다.
새로 추가된 파일(untracked files)은 저장되지 않는다.
▷ git stash -u
작업 내용을 임시 저장한다.
새로 추가된 파일(untracked files)도 같이 저장된다.
-u를 붙여서 사용한다.
▷ git stash list
저장한 목록을 볼 수 있다.
저장을 하면 stash@{0}으로 저장되며, 기존 것들은 번호가 하나씩 밀려난다.
▷ git stash save “스태쉬 이름”
특정 이름으로 stash를 저장한다
목록을 보면 브랜치 이름과 커밋 메세지 등으로 저장되어서 관리하기 어려울 수 있으므로 사용한다.
아래와 같이 특정 이름으로 나오도록 저장할 수 있다.
▷ git stash pop
저장되어있는 목록 중 0번 째( stash@{0} )를 불러온다.
가장 최근에 저장한 것을 제일 먼저 불러오는 구조이다.
불러오면 저장되어있는 stash는 사라지고, 나머지 번호가 하나씩 앞으로 당겨진다
▷ git stash pop stash@{n}
특정 stash를 불러오고, list에서 그 stash는 사라진다.
▷ git stash apply
저장되어있는 목록 중 0번 째를 불러온다.
pop과 같이 가장 최근에 저장한 것을 제일 먼저 불러오는 구조이다.
하지만 저장되어있는 stash는 사라지지않고 불러오기만 한다.
▷ git stash apply stash@{n}
특정 stash를 불러오고, list에서 그 stash는 사라지지 않는다.
▷ git stash drop
0번째 stash를 리스트에서 삭제한다
▷ git stash drop stash@{n}
특정 stash를 리스트에서 삭제한다
▷ git stash clear
리스트에서 모든 stash를 삭제한다.
'기타 개발 관련' 카테고리의 다른 글
[Docker] Docker란? Docker 사용법, 도커 실습 (0) | 2025.01.18 |
---|---|
지식재산능력시험(IPAT) 시험 정보 및 후기 (0) | 2023.06.02 |