[Git] 커밋 이력 포함 레포지토리 가져오기
팀프로젝트를 진행할 때 다른 팀원이 레포지토리를 생성하고, 저는 Contributor로 참여했습니다.
팀프로젝트가 모두 끝난 뒤, 해당 프로젝트 레포지토리(원본)를 제 레포지토리로 가져올 수 있으면 좋겠다고 생각했고, 단순히 프로젝트만 가져오는 것이 아니라 커밋 이력을 포함해야 했습니다.
다음과 같은 방법을 사용하면 커밋 이력을 포함하여 제 레포지토리로 그대로 가져올 수 있습니다.
1. 준비
원본 레포지토리를 가져오기 위해 임시로 폴더를 생성해줍니다.
저는 repo라는 폴더명으로 바탕화면에 폴더를 생성했습니다.
그리고 레포지토리를 새로 하나 생성해주세요.
git bash를 켜고 해당 폴더로 이동해줍니다.
cd 명령어 또는 폴더 우클릭 > git bash here를 사용해주시면 됩니다.
2. clone
clone을 하기 위해서는 원본 레포지토리의 주소가 필요합니다.
원본 레포지토리에 <> Code를 눌러 HTTPS 주소를 복사해주세요.
이제 git bash에서 다음 명령어를 입력합니다. 붙여넣기는 Shift+ Insert 를 사용하시면 됩니다.
--mirror 옵션을 통해 커밋 이력을 그대로 가져올 수 있습니다.
git clone --mirror 원본레포주소
3. remote 주소 변경
clone이 완료되면 폴더에 원본레포이름.git 이라는 폴더가 생성됩니다.
이전에 생성해둔 내 레포지토리의 주소를 복사한 후, git bash에서 원본레포이름.git 폴더로 이동해주세요.
git remote -v 명령어를 사용하면 내 레포지토리로 연결된 것을 확인하실 수 있습니다.
git remote set-url origin 내레포주소
git remote -v
4. push
마지막으로 push를 해주시면 됩니다.
git push
레포지토리에 들어가면 커밋 이력 그대로 레포지토리를 가져온 것을 볼 수 있습니다.