본문 바로가기
코드정리/Github - SourceTree

[Github] git checkout 에러 해결방법 ( Your local changes to the following files would be overwritten by merge )

by Gi-One 2022. 2. 2.

#github #sourcetree #checkouterror

 

안녕하세요 Gi_1입니다.

git checkout 에러 해결방법 입니다. ( 소스트리 / 깃허브 )

 

 

1. 원인

 

작업 중 흔하게 보는 오류입니다. 

브렌치에 작업을 해 놓고, 커밋을 하지 않고 다른 브렌치로 체크아웃을 시도할 시 생기는데요.

 

오류 메세지에서 이미 해결방법이 나와 있습니다.

Please commit your changes or stash them before you switch branches.

 

브랜치를 변경하기 전 변경사항을 commit 하거나 stash하라고 합니다.

 

 

Commit

 

변경 사항을 커밋 해 주고 다시 브랜치 checkout을 시도하면 에러 없이 성공 합니다.

 

SourceTree를 이용하지 않는 경우 : git commit

 

 

 

Stash

stash는 커밋하지 않고 변경사항을 저장하는 방법입니다.

 

 

The stash desc is invalid. Ref names must follow git ref-format rules:~~ 하는 에러가 발생할 수도 있는데, 

특수문자가 들어가거나, .(점)안된다고 하니 주의 가끔 한국어로 해도 안되는 경우가 있다고 합니다.

저는 한국어로 했지만 오류가 발생하지 않았지만 오류가 발생하는 경우 영어로 변경 해 보시기 바랍니다.

 

 

스태시 내용을 다시 꺼내올 때는 왼쪽에 스태시 -> 스태시버전 우클릭 -> 적용 하시면 됩니다.

 

 

sourcetree를 이용하지 않는 경우 :

git stash -> git stash list -> git stash apply [stash 이름] -> git stash pop

저장 -> 목록 확인 -> stash 적용 -> stash 제거

 

 

 

추가로, stash는 작업 중 작업을 중단하고 다른 일을 할 때, commit을 하고싶지 않으면 사용해도 좋은 것 같습니다.

 

 

댓글