본문 바로가기
IT KNOWLEDGE

임오군란과 민씨 - git stash

by btc_홍민표 2022. 9. 8.

 

안녕하세요 임오군란과민씨 입니다.

오늘은 git의 임시저장 기능인 stash 기능을 소개하겠습니다.

 

먼저 stash 기능이 언제쓰이는지 알아보도록 하겠습니다.

 

Stash는 개발하는 과정에서 언제 쓰일까?

예를들어 버그 수정을 해야하는 상황이라고 생각해보도록 하겠습니다.

이 때 git stash 기능을 쓴다면 이미 작업하고 있는 환경에서 기존 작업 환경을 유지한 채 before/after 및 테스트 점검이 가능합니다.

 

절차)

stash → 임시저장 → 원상복구 가능 → before 테스트 가능 → stash pop → 복구 → after 테스트


코드로 간단하게 보도록 하겠습니다.

프로젝트 폴더로 이동
$ cd /workspace/examples/

# Branch 생성
# 작업내용을 대표하는 키워드로 Branch 명 생성추전  
$ git checkout -b fix-bug

# master 변경
$ git checkout master

# 현재 작업 레파지토리 확인
$ git remote -v 


# 현재 소스 파일 확인 - 수정된 파일/수정되지 않은 파일 확인
$ git status

# 현재 작업 확인
$ git show

# 수정 결과 확인 => 작업 후에는 git diff 입력
$ git diff

# 임시저장하여 keeping (git diff 나 변화분이 나타나지 않음)
$ git stash

# 임시저장했던 상태를 다시 불러옴 (원상 복구)
$ git stash pop

git stash - 임시 저장
git stash pop - 버그를 수정하고 다시 임시저장 했던 것을 불러옴

 

그렇다면 stash와 checkout 파일 복구의 공통점은 무엇일까요?

결과적으로 원상복구 시킨다는 측면에선 같습니다. 

하지만 Stash는 임시로 저장하는 반면 Checkout은 수정했던 것들을 복구시킨다는 차이점이 있습니다.

 

오늘은 간단하게 git stash 기능을 이용하여 기존 작업했던 것들을 임시 저장 하고 다른 작업을 하는 방법에 대해서 알아보았습니다.

 

감사합니다.

댓글