Git, Github

다른 브랜치로 이동할 때의 명령어 (checkout, stash)

jellylucy 2022. 11. 14. 18:51

checkout 명령어 정리

1. -b 옵션

git checkout -b <branch>

브랜치 작성과 체크아웃을 한꺼번에 실행할 수 있다

 

*force checkout

커밋하지 않은 수정코드들 버리고 체크아웃한다.

 

2. 스테이시(stash)

어떤 브랜치에서 파일을 수정하거나 추가한 후 커밋하지 않은 상태에서 다른 브랜치로 체크아웃할 경우 오류가 발생한다.

또는 force, smart checkout 선택창이 뜬다.

 

커밋을 하고 체크아웃을 하면 되지만 작업이 완료되지 않은 상태인 경우에는

해당 커밋하지 않은 코드를 stash에 저장해둘 수 있다.

현재 진행중이던 내용들을 언제든지 git stash로 저장해두고 다른 브랜치 이동 후 다시 돌아와 복구하여 작업을 계속할 수 있다.

 

현재 상황 파악하기

git status

현재 브랜치의 파일 상황을 판단한다.

스테이시로 안전하게 보관

git stash
git stash list

저장내용을 복구

git stash pop

이 명령을 통해 저장내용을 현재 브랜치에 적용할 수 있다.

git stash apply

이 명령은 현재 브랜치에 저장하면서 stash 목록에서 drop 하지는 않는다.

-> 여러 브랜치에 저장된 내용을 적용하는 것이 가능!

 

stash에 저장된 내용 삭제

특정 stash를 삭제한다. stash 아이디를 명시하지 않으면, 나중에 저장된 내용이 먼저 삭제

git stash drop stash@{0}