# 2개의 깃 저장소를 합쳐보자
# 로컬에 repo1, repo2 각각 저장소를 사용한다고 가정하고
# repo1 += repo2 으로 repo1 기준으로 repo2 저장소를 추가하여 병합한다.
# repo1 에서 repo2 리모트 추가
git remote add repo2 https://github.com/ysoftman/repo2
# remote 상태를 확인하면 origin 외 repo2 도 추가된것을 알 수 있다.
git remote -v
repo2 https://github.com/ysoftman/repo2 (fetch)
repo2 https://github.com/ysoftman/repo2 (push)
origin https://github.com/ysoftman/repo1 (fetch)
origin https://github.com/ysoftman/repo2 (push)
# repo2 내용(브랜치,태그등 정보)을 최신으로 가져온다.
git fetch repo2
# 이제 커밋 로그를 보면 (repo2/...)의 내용도 같이 보인다.
# repo2 의 master 브랜치내용로 하는 로컬 브랜치를 만든다.
git checkout -b old_repo2 repo2/master
# (optional) repo2 -> B 디렉토리를 생성하고 하위로 옮기는 커밋
# 이제 (repo1기준) master 로 바꾸고
git co master
# (optional) repo1 -> A 디렉토리를 생성하고 하위로 옮기는 커밋
# old_pro2 -> master 로 머지한다.
git merge old_repo2
# Fatal: refusing to merge unrelated histories 에러 발생시
# git merge old_repo2 --allow-unrelated-histories
# 리모트에 푸시
git push
# 이제 필요없는 repo2 리모트 저장소 설정에서 제거
git remote remove repo2
comments:
댓글 쓰기