본문 바로가기
All Side/Git

[Git] Your local changes would be overwritten by checkout의 선택지마다 다른 점 비교

by developerBeluga 2024. 1. 18.
728x90
반응형

 

 

 

 

 

 

 

vscode로 이런저런 브랜치를 옮겨다니다가 심심치 않게 보는 안내문구다.

현재 위치하는 브랜치와 옮겨갈려는 브랜치 간의 변경사항이 충돌할 때 나타난다.

 

3가지 선택지를 주는데 각각 어떤 점이 다른지는 알고 누르도록 하자.

 

 

1. Stash & Checkout

임시 저장소(stash)에 저장하고 체크아웃을 진행한다.

나중에 이 변경사항을 다시 적용할 수 있다. 

그래서 현재 작업을 유지하면서 다른 브랜치로 전환하고 싶을 때 유용하다. 

(git stash pop 혹은 git stash apply)

 

 

 

 

2. Migrate Changes

현재 변경사항을 새로운 브랜치로 옮기고 해당 브랜치로 체크아웃한다.

현재 변경사항을 별도의 작업으로 관리하고 싶을 때 유용하다.

 

 

 

3. Fore Checkout

 

현재 변경사항을 무시하고 강제로 체크아웃을 진행한다.

이 방법은 변경사항을 영구적으로 잃게 되므로 주의가 필요하다.

 

 

 

 

총정리하기

임시적으로 작업을 중단하고 다른 작업에 집중해고 싶으면 Stash & Checkout.

현재의 변경사항을 별도의 작업으로 분리하고 싶으면 Migrate Changes.

현재의 변경사항이 더 이상 필요 없을 때는 Force Checkout.

 

 

 

 

 

 

 

728x90
반응형

댓글