✍️ 개요
최근에 리포지토리를 복사하여 새로운 리포지토리를 만들어야 했습니다.
이때, 두 리포지토리는 같은 이력을 공유하지만 서로 별개의 형상 관리가 필요했습니다.
위처럼 단순히 기존 리포지토리의 모든 파일을 복사하여 새로운 리포지토리를 붙여넣는다고 해결되지 않습니다.
📌 해결책
해결책 : git mirror 사용
$ git clone --mirror {Old_Repository_URL}
Git Bash를 열어 위 명령어를 입력하여 리포지토리의 모든 데이터를 복사
$ git {Old_Repository_Name}.git
미러링이 끝나면 해당 리포지토리 이름의 폴더로 이동
$ git remote set-url --push origin {New_Repository_URL}
그후 새로 생성한 리포지토리로 이동
(편집기에서 [ Open Git Bash Here ] 클릭, 또는 Git Bash에서 cd 명령어로 접근)
그리고 위 명령어를 입력하여 원격 저장소의 URL을 push하여 변경
$ git push --mirror
마지막으로 미러링한 정보를 push
원격 저장소에 정상적으로 복사가 된 모습
소스트리에서 Pull 버튼을 누르면 복사된 모습을 확인할 수 있음
원본과 복사본은 서로 다른 형상 관리로, 깊은 복사에 해당