git pull 시 발생하는 warning 해결하기(Need to specify how to reconcile divergent branches)
각 옵션의 의미를 알아보고, 설정까지 해보자.
velog.io
위 블로그 설명처럼 pull 하려는 원격저장소의 브랜치와 로컬저장소의 브랜치가 fast-forward 관계일 때만 pull을 허용한다.
두 브랜치가 fast-forward 관계라는 건 둘 중 하나를 의미한다.
두 브랜치가 갈라진 commit을 기준으로
- 로컬저장소에만 새로운 commit이 있고, 원격저장소에는 없다.
- 원격저장소에만 새로운 commit이 있고, 로컬저장소에는 없다.
첫번째 경우는 pull을 받아올 필요가 없으므로 두 번째의 경우에만 pull이 가능하다는 뜻이 된다.
그럼 만약 원격저장소의 새로운 commit이 존재하는데 git pull을 하지 않은 상태에서 로컬저장소에 새로운 commit을 했다면, git은 pull을 허용하지 않는다.
간단하게 해결하려면, 해당 브런치 작업이 없고 날려도 된다면,
git checkout -D main
git checkout main
위처럼 local commit을 한 브런치를 날리고 새로운 원격브런치를 가져와서 새롭게 시작할 수 있는 방법이 있다.
'git' 카테고리의 다른 글
line 1: docker-compose: command not found (0) | 2024.08.01 |
---|---|
XXXXX had recent pushes XX minutes ago (0) | 2024.06.17 |
Github chatGPT Auto CodeReview (0) | 2024.06.02 |
Github actions에서 Secrets로 환경변수 관리 (0) | 2024.04.18 |
한 컴퓨터에서 여러 깃허브 계정 사용하기 (2) | 2023.11.14 |