github

[github] Git 입문 10강 : stash를 이용한 작업 내용 저장

유호야 2021. 5. 22. 00:54
반응형

브랜치 변경하기

브랜치를 만들고 체크아웃을 통해 변경하려고 하면 현재 작업디렉토리가 깨끗해야 합니다. 그런데 갑자기 다른 브랜치로 바꾸고 싶을 때 현재 작업 내용을 임시로 저장하고 싶다면? 이럴 때 스태시를 사용합니다.

스태시 사용하기

스태시를 사용하면 임시 저장 공간에 현재 작업 내용이 저장됩니다. 이 내용을 스태시라고 하고 언제든지 다시 복구할 수 있습니다.

 

Commit --amend 와 stash

 

브랜치 체크아웃시 주의사항

브랜치를 만들고 체크아웃을 하려면
현재 작업 디렉토리가 깨끗해야 합니다.

그런데 갑작스럽게 체크아웃이 필요하다면?

> 즉 변경사항이 있을 때는 다른 브랜치로 체크아웃할 수가 없다.

> branch "test" 만들기

방법 1

작업 중인 내용의 임시 저장

1) 브랜치1에서 일단 (임시) 커밋을 한다.
2) 브랜치2로 체크아웃하고 볼 일을 본다.
3) 다시 브랜치1로 되돌아 온다.
4) 1의 작업을 이어서 마무리 짓는다.
5) 커밋 덮어쓰기 (commit --amend)
6) (옵션) 필요하다면 (push --force)

 

git push --force
강제 푸쉬

 

Stash를 이용해서 같은 작업하기
 

1. Stash를 만든다.

2. 이 때 새로운 파일이 있었다면 일단 인덱스에 추가한다.

3. 체크아웃한다.

4. 되돌아온다.

5. Stash를 Pop한다!

6. 보통 커밋을 새로 생성한다.

 

마지막 커밋 정정은 push --force 를 해야하고 이는 좋지 않다.

 

반응형