자주 까먹어서 헤메는 내용이라 정리해둡니다.
error: Your local changes to the following files would be overwritten by merge:
[파일들...]
Please, commit your changes or stash them before you can merge.
error: The following untracked working tree files would be overwritten by merge:
[파일들...]
Please move or remove them before you can merge.
첫번째 에러는 "Please, commit your changes or stash them before you can merge."
commit 하거나 stash 하라고 하는데요.
저의 경우 git pull 은 보통 원격저장소의 내용으로 덮어 씌우는 경우가 많아서
git stash
git pull
하여 해결합니다.
두번째 에러는 "Please move or remove them before you can merge."
문제가 되는 파일들을 이동하거나 지우라고 하는데요.
git stash 하여도 해결되지 않습니다.
추적하고 있지 않은(untracked) 파일이라 그런것 같습니다.
몇가지 방법이 있습니다.
1. untracked 파일들이라서 그런것 같으니 add 후 stash 합니다.
git add -A
git stash
2. untracked 까지 stash 해주는 옵션을 사용합니다.
이 경우 git stash pop 하면 untracked 였던 파일은 untracked 로 복원됩니다.
git stash --all
3. 워킹 디렉토리 안의 추적하고 있지 않은 모든 파일을 지웁니다.
복원이 안되므로 위 두가지 방법중 하나를 사용하는것이 좋을것 같습니다.
git clean [옵션]
저는 덮어 씌우는 목적이고 외우기 쉬워서
git add -A
git stash
git pull
을 하여 해결합니다.
참고 링크
https://git-scm.com/book/ko/v2/Git-%EB%8F%84%EA%B5%AC-Stashing%EA%B3%BC-Cleaning
댓글 없음:
댓글 쓰기