error: Your local changes to the following files would be overwritten bt merge : config/settings.py
please commit your changes or stash them before you merge.
코드를 수정하지 않았는데도 main branch에서 pull을 하다 보면 이런 오류 메세지가 뜰때가 있었다.
이럴때는
git fetch <branch>
git reset --hard origin/<branch>
git pull origin <branch>
위 코드를 따라 입력하면 된다.
git fetch <branch>
git fetch <branch 명>은 원격저장소에서 데이터를 가져오는 것이다.
git pull origin처럼 merge를 시키는 것이 아니기에 합치지 않는다.
개인이 아닌 팀으로써 개발 과정중 같은 파일을 수정하는 경우가 있다.
그럴때 fetch 명령을 한 후에 merge 명령을 입력하는 것이 좋다
git reset --hard origin/<branch>
git reset --hard origin/<branch 명>은 현재 로컬저장소 즉 내 pc의 서브브랜치에 있는 내용과 변경사항을 버리고 원격저장소의 main과 동일하게 만드는 것이다. 나는 push후에 작업을 하지않고 main에서 pull을 한거기에 서브브랜치에 있는 내용과 변경사항을 버려도 상관이 없었다.
git pull origin <branch>
모든 작업은 끝났다. 이제 다시 pull만 하면 멀쩡히 pull이 완료된다.