문제 상황
- 우선 로컬에서 프로젝트를 생성하여 작업을 수행하였습니다.
- Github 상으로 README를 추가하여 원격 저장소를 생성하였고, 곧바로 README를 수정하는 커밋을 남겼습니다.
- Git remote add 후 git pull을 시도하였으나 실패하였습니다.
원격 저장소를 생성할 때에 독자적으로 README를 추가하고 수정하는 커밋을 남김으로써 로컬 저장소와는 별개의 커밋 이력을 가지게 되었습니다.
※ 두 Initial 커밋은 서로 다른 커밋입니다.
해결
git pull을 사용할 때에 --allow-unrelated-histories 옵션을 사용하여 강제로 커밋을 공유합니다. 해당 옵션을 사용하면 완전히 별개의 커밋 이력을 가진 저장소 간의 커밋을 공유할 수 있게 됩니다.
위의 방법 이외에도 pull 대신 push의 force 옵션을 이용할 수도 있습니다. 이 경우에 충돌이 있더라도 로컬의 변경사항이 바로 원격에 덮어씌워집니다.
두 방법 모두 기본적으로 공통된 커밋 기록을 가지지 않는 서로 다른 저장소에 대해 강제적인 변경을 적용할 수 있는 옵션이므로 이를 적용할 저장소를 착각하여 사용하지 않도록 주의하여 사용합시다.
참고
https://gdtbgl93.tistory.com/63
'크고 작은 문제들' 카테고리의 다른 글
[react-router-dom + jest] TypeError: Cannot destructure property 'basename' of 'React__namespace.useContext(...)' as it is null. (0) | 2023.09.04 |
---|---|
[CSS] 색상에 큰따옴표 사용 + content 속성에 따옴표 미사용 (0) | 2023.09.03 |
[TypeScript] 배열 요소에 대한 타입 추론 (0) | 2023.08.17 |
[React] JavaScript로 작성된 카카오 지도를 TypeScript로 포팅하기 (0) | 2023.08.03 |
[Ubuntu] Window에서 열리는 VS Code (0) | 2023.07.08 |