2022. 12. 28. 19:10ㆍ코딩공부/GITHUB
1. 프로젝트 폴더 내 git init 생성
git init
2. GitHub repository 연결
git remote add origin 복사해온깃헙레포url
잘 연결되었는지 확인
git remote -v
3. 새 repository에서 내용을 pull 받음으로써 get history를 동기화
git pull origin main
4. 새 repository에 파일을 업로드 하기위에 스테이지에 파일 올리기
git add .
모든 파일을 스테이지에 올린다는 뜻
5. 최초 커밋
git commit -m "first commit"
6. repository에 파일 업로드
git push -u origin master
발생했던 error
fatal: refusing to merge unrelated histories
공통된 커밋 포인트가 없어서 발생한 에러
검색 결과 git pull origin master(브랜치이름) --allow-unrealated-histories로
강제로 pull하면 된다고 하여 시도해보았으나
fatal: Not possible to fast-forward, aborting.
에러가 이어서 발생하였다.
해당 에러의 대표적인 해결 방법인 git pull --rebase를 하였으나
fatal: refusing to merge unrelated histories 에러가 다시 떴다.
더 찾아 보니 git push origin +master 브랜치앞에 +를 더해줘서 해결했다는 글이 있어 해봤더니 해결되었다.
알고보니 깃레파지토리 생성시 기본으로 생성된 readme 파일이 있고 로컬에는 해당 파일이 없어서 push가 불가능하여 생긴 에러였다.
다만, git push origin +master로 강제로 push할 때에는 기존 커밋들이 덮어씌워지거나 사라질 수 있으니 새 레파지토리에 프로젝트를 연결할 때에만 쓰는 것을 권장한다고 한다.
** 기존 프로젝트와 깃 레파지토리를 연결할 때에는 깃 안의 readme나 중복될 수 있는 파일을 지우고 합치면 에러를 방지할 수 있다!
reference
https://suzyalrahala.tistory.com/40?category=512269