본문 바로가기
Programming/Git&Github

git/github 커밋 내역 포함해서 레포지토리 옮기기

by eungbbang 2024. 2. 17.
반응형

 

기존 레포지토리 위치 변경이 필요하여 새 레포지토리로 옮기려고 하는데

커밋 내역을 포함해서 이동하고 싶을 경우 다음과 같이 할 수 있다

 

 

#다운 받을 로컬 파일 지정 안해주는 경우

git clone --mirror [기존 레포지토리 깃 주소]
cd [기존 레포지토리 명].git
git remote set-url --push origin [신규 레포지토리 깃주소]
git push --mirror

 

 

#다운 받을 로컬 폴더 지정하는 경우

git clone --mirror [기존 레포지토리 깃 주소] [다운 받을 로컬 폴더 경로]
cd [다운 받을 로컬 폴더 경로]
git remote set-url --push origin [신규 레포지토리 깃 주소]
git push --mirror

 


 

기존 레포지토리 깃 주소

https://github.com/WeatherCamInsights/Android-Demo-App.git

 

 

새 레포지토리 깃 주소

https://github.com/nyangzzi/WeatherCamInsights.git

 

 

명령어 입력

 

결과

 

좌측) 이전 레포지토리

우측)새 레포지토리

 

비교해보면 잘 옮겨진 것을 볼 수 있다

 


 

 

참고) 2번째 명령어의 경우 clone한 로컬 폴더로 이동하는 것이므로 위에서 특정 폴더로 clone을 받아줬다면 해당 폴더로 이동하면 된다.

(#다운 받을 로컬 폴더 지정하는 경우 참고)

여기서는 따로 경로를 지정하지 않아주었으므로 user 폴더에 저장되었다

 

 

해당 폴더의 저장소 연결을 확인해보면 다음과 같이 이전 레포지토리와 새 레포지토리에 모두 연결되어있다.

fetch는 이전 레포지토리에, push는 새 레포지토리에 연결되어 있으므로 동기화를 위해 하나의 레포지토리에만 연결하는 작업을 하려고 한다.

 

 

1) 방법 1

해당 로컬 폴더를 삭제하고 새 레포지토리를 clone

 

2) 방법 2

원격 저장소 연결 해제 후 새 레포지토리 주소에 재연결

 

 

 

반응형

댓글