2020-03-25 github.io에서 작성
소스 관리 툴을 처음 사용하면서 친구와 진행한 토이 프로젝트를 초창기 아무것도 모르고 개인 리포지토리에 생성 후 진행했다.
프로젝트가 어느정도 진행 된 후 개인 repo보다는 그룹으로 진행하는 것이 맞다는 생각이 들었고 주소 이전을 할 방법을 찾아보았다.
git commend에 관한 설명을 제외하고 repo 주소 이전에 관한 내용만 기록하겠다.
git clone --mirror {git Repo address}
옮기고자 하는 대상 리포지토리 이름이 개인 리포"Test_origin_repo" 라면
git clone --mirror http://github.com/Jooss287/Test_origin_repo
clone이 완료되면 실제로 현재 폴더에 {Repo name.git}폴더가 생성 된 것을 알 수 있다.
Command 입력 앞에 나오는 경로가 현재 경로이다
git mv {Repo name.git} .git
진행하다가 폴더 이름을 변경하면서 에러가 났다.
fatal: bad source, source={Repo name.git} destination=.git/{Repo name.git}
관련 에러를 검색해보니 git init와 git path
의 문제로 나오는데 Init의 경우에는 mv명령어가 사용 불가능해졌고 path는 올바르게 사용하였다.
결국 임시방편으로 window에서 직접 .git폴더를 삭제하고 {Repo name.git}을 {.git}으로 변경
새 리포지토리로 복사하기 전 git cmd창에서 복사하고자 하는 리포지토리를 연결해야 한다.
git remote set-url origin {new Repo address}
복사 될 새 리포지토리 이름이 "Test_target_repo"라면
git remote set-url origin http://github.com/Jooss287/Test_target_repo
Fatal 에러가 뜨지 않고 usage:로 시작하는 response가 나왔다면 연결이 완료되었다. 이제 push를 이용해서 리포지토리를 복사한다.
git clone --mirror
이제 해당 홈페이지로 가서 Repo가 제대로복사되었는지 확인
Issue 도 함께 복사되면 좋겠지만 그런 기능은 아직 존재하지 않는다(필요가 없을지도)
이전 Repo 와 새로 이사한 Repo 가 남아 있어 비교하면서 Issue를 일일이 추가했다.
기존의 Repo의 Issue가 많을 경우 다른 방법을 강구해야하 하지만 Issue 의 개념을 깨달은지 얼마 되지 않아 아직 없는것에 감사해야 할 듯.