반응형

에러를 해결하고 추가적으로 stash를 학습하도록 하겠습니다.

 

깃 사용 중 에러가 발생했습니다. 상황은 이렇습니다.

로컬에서 작업 중인 파일 또는 새롭게 생성한 파일들이 존재합니다.

그리고 깃헙으로부터 코드를 pull을 진행했는데 다음과 같은 에러가 발생했어요.

 

error: The following untracked working tree files would be overwritten by merge:

 

기존에 작업 한 파일들이 존재해서 pull이 안되었습니다. 기존 작업한 파일들을 저장하고 pull을 받아오고 싶습니다.

다음과 같은 방법으로 해결하겠습니다.

기존 작업한 파일들을 깃에서 트래킹 할 수 있도록 add 명령어를 실행해주세요.

add 명령어를 수행했다면 stash 명령어를 통해서 현재 작업을 저장해주세요.

다음으로 pull 명령어를 수행해주면 정상적으로 수행이 될 것입니다.

git add *
git stash
git pull

 

stash 명령어를 통해서 pull 이전의 작업을 저장했기 때문에 다시 불러올 수 있도 있습니다.

 

에러도 해결한김에 stash 명령어도 학습하겠습니다.

 

1. git stash <- 작업 저장

git에서 트래킹이 되는 파일들 중 저장된 파일들 임시 저장소에 저장합니다.

우리는 pull 전에 변경한 작업에 대해서 임시로 저장했습니다.

 

2. git stash list <- stash 리스트 확인

현재 stash에 저장된 리스트를 확인할 수 있습니다.

3. git stash apply <- 리스트 맨 위에 있는 리스트 갖고 오기

특정 stash를 불러오길 원할 경우에는 stash를 명시해주세요 e.g) git stash apply stash@{4}

stash apply 명령어를 통해서 이전 파일들을 불러왔는데 conflict가 발생을 했습니다. 이전 로컬에서 한 작업과 pull 파일들이 충돌이 일어났습니다. git status 명령어를 통해서 현재 상태를 보겠습니다.

새로운 파일 하나와, 머지가 안된 파일들이 있습니다. 에디터 툴을 이용해서 파일을 열어보면 아래의 모습이었습니다.

현재 변경과 stashed 된 파일들이 충돌이 일어난 모습인데요.

이제는 필요로 한 부분만 남겨주시고 직접 소스 코드를 정리하시면 완료 됩니다 :)

 

 

반응형

+ Recent posts