다른 Git 저장소를 하나로 합치는 방법

DongHwan·2021년 8월 12일
0

Git

목록 보기
3/12

서로 다른 Git 레포지토리의 커밋 이력을 유지한 채로 하나의 레포지토리로 합치고 싶은 경우 다음과 같은 방법을 사용할 수 있다.

  1. git remote add 리모트이름 해당_저장소_경로

    • 원격 저장소는 꼭 웹에 올라온 것만 지정할 수 있는게 아니라 내 컴퓨터의 다른 경로를 원격 저장소로 지정할 수도 있다.
    • 예를 들어, 등록하고 싶은 원격 저장소 경로가 ~/workspace/project1이라면, 이 경로를 입력해주면 된다.
  2. git fetch 리모트이름 --tags

    • 해당 원격 저장소에 있는 커밋 로그, 브랜치들의 정보를 태그를 붙여서 가져온다.
  3. git merge --allow-unrelated-histories 리모트이름/브랜치이름

    • --allow-unrelated-histories
      • 서로다른 git 레포를 merge할려고 해도, 두개가 관련이 없는 레포이기 때문에 merge가 안된다.
      • 그럴때 해당 옵션을 붙여주면 merge가 된다.
    • 위에서 fetch할 때 --tags 옵션을 줬기 때문에, 리모트명/브랜치명 형식으로 리모트 저장소의 브랜치를 지정할 수 있다.
  4. git remote remove 리모트이름

    • merge가 끝났으면 리모트를 제거해주자

참고 자료

서로 다른 git 저장소를 하나의 저장소로 합치기

profile
날 어떻게 한줄로 소개해~

0개의 댓글