기존의 만들었던 repo들을 하나의 레포지토리로 합치려고 한다.

처음 해봐서 열심히 정리해야지


방법

새로운 repo 생성 후 git 주소 복사하기

 

터미널에서 주소를 git clone 하기

git init
git clone https://github.com/name/reponame.git

 

해당 폴더로 이동

cd reponame

 

지금 레포들을 합치면 새로 만든 레포에서 커밋 또는 푸시가 없어서 에러가 발생

working tree has modifications. cannot add.

 

테스트 커밋 푸시하기

git add .
git commit -m "test commit"
git push origin main

 

기존 레포지토리 합치기

git subtree add --prefix=기존레포지토리이름 기존레포지토리주소 기존레포의브랜치이름

 

새로 만든 레포에 push

git push origin HEAD:main --force

 

이제 기존 레포를 삭제해도 이전에 커밋 기록은 그대로 유지된다.


참고

https://backendcode.tistory.com/271