[Git] Stash 사용하기
2020. 7. 31. 13:39개요
Stash 사용예
Stash 개념
Stash 특징
Stash 주의점
Stash 명령어
Stash 참고사항
Stash 사용예
- 현재 수정사항들이 있어서 다른 branch로 checkout을 하지 못할 때.
- 현재까지 변경된 사항을 잠깐 저장 후 원래 소스로 테스트하고 싶을 때. 그리고 추후에 꺼내고 싶을 때.
(잠깐 저장은 git stash save 라는 명령어로, 다시 꺼낼 때는 git stash pop 명령어로 한다)
Stash 개념
- 아직 Commit을 완료하지않은 작업들을 저장할 수 있는 스택. 또는 그것에 저장하고 갖고오는 명령어.
- Commit 되기 이전 작업 중 파일과 git add로 추가된 파일을 모두 stash 영역에 저장.
Stash 특징
- 워크스페이스에서 수정한 파일들만 저장
- 아래 파일들을 저장
* Tracked 상태인 파일들을 수정한경우.
* Staging Area에 있는 파일
(Tracked상태 파일 : 이전 커밋에도 해당 파일이 존재했음.)
(Staged상태 파일 : git add 명령을 실행한 파일).
Stash 주의점
- index 영역에 Tracking된 파일만 저장됨.
- 새롭게 생성된 파일들은 git add 후 git stash 명령어를 사용 or git statsh -u를 사용해야함.
새롭게 생성된 파일들은 Untracked 파일들이다)
Stash 명령어
// 스택에 stash 저장
git stash
// 위 명령어와 같음
git stash save
// 새롭게 생성된 파일까지 stash 저장. (하지만 add 후 stash 저장하는거 추천)
git stash -u
// 이름 부여 후 stash 저장
git stash save [이름]
// 응용
git stash save -u [이름]
// stash 목록 보기
git stash list
// 최근에 저장한 stash 복원
git stash apply
// 해당 아이디 stash 복원 (stash아이디와 이름은 다름)
git stash apply [stash 아이디]
// 최근에 저장한 stash drop
git stash drop
// 해당 아이디 stash drop
git stash drop [stash 아이디]
// stash 모두 제거
git stash clear
// stash 복원 후 바로 제거
git stash pop
Stash 참고사항
- apply는 단순히 stash를 적용하는 것, stash는 stash 스택에 남아있음.
- stash에 꺼낼 때, 현재 브랜치가 stash에 저장했던 브랜치일 필요는 없음. (다만 충돌있으면 알려줌)
인용
Git을 잘 써보자- 5. git stash https://suwoni-codelab.com/git/2018/04/06/Git-stash/
[Git] git stash 명령어 사용하기 https://gmlwjd9405.github.io/2018/05/18/git-stash.html
'Git > Git' 카테고리의 다른 글
[Git] 두 브랜치 간 비교 & 두 브랜치 간 비교를 커밋으로 만들기 (git create commit from between two branches) (0) | 2020.11.18 |
---|---|
[Git] Git 비교하기 (0) | 2020.10.19 |
[Git] 오류: Gerrit Change ID 생성 안됨. (0) | 2020.05.15 |
[Git] Git 초기 셋팅 (0) | 2020.04.19 |
[Git] 실무에서 쓰이는 상황별 Git 명령어 정리 (0) | 2020.04.14 |