블로그를 변경하였습니다.

해당 블로그는 더 이상 추가 포스팅 없을 예정입니다.

👉 새 블로그 방문하기


[Git] git 복제 --mirror

2023. 3. 8. 11:48
728x90
반응형

git --mirror 라는 옵션을 주어 현재 레포지토리를 다른 레포지토리로 복제할 수 있다.

복제될 때 사용된 브랜치까지 전부 복제가 된다.

 

# 클론할 레포지토리 디렉토리로 이동
cd 클론할레포지토리

# 레포지토리 클론
git clone --mirror 클론할레포지토리주소


# 위 명령어를 실행하면 현재의 디렉토리 안에 레포지토리명.git 파일이 생성되는데
# 이 파일로 들어간다.
cd 기존원격레포이름.git

# git 파일 안에서 옮길 레포지토리 주소를 입력한다.
git remote set-url --push origin 이동할레포지토리주소

# PUSH
git push --mirror

# 생성된 .git 파일이 이제 필요가 없으므로 삭제
rm -rf 클론할레포지토리.git

 

 


 

❗ 복제 과정에서 마주할 수 있는 에러

 

1️⃣ fatal: Authentication failed for 'https://github.com/(GitHub-ID)/(구repository-name)/'

git clone을 할 때, github의 ID / Password를 입력하게 되는데 2021년 8월 이후로는 ID / Password 아닌 일정기간 유효한 token을 통해 인증받는 방식으로 변경되었기 때문에 발생하는 에러라고 볼 수 있다.

 

github 에서 token을 발급받고 패스워드를 입력할 때 발급 받은 토큰으로 입력하면 해결된다.

 

git config --global user.name 아이디

git config --global user.password 복사한토큰

 

 

2️⃣ refusing to delete the current branch: refs/heads/main

Git Error "fatal: invalid branch name: init.defaultBranch ="

git remote에서 발생할 수 있는 에러

 

기존 원격주소와 새 원격주소의 default branch 가 다를 때 발생한다.

 

나의 경우 기존 레포지토리의 default branch 가 master, 새로 생성한 레포지토리의 default branch 는 main 이였다.

그래서 해당 이슈가 발생..

 

해결 방법은 어느쪽이든 한 곳을 수정하여 서로의 default 브랜치 명을 맞춰주면 된다.

 

 

 

728x90
반응형

'개발노트 > Git' 카테고리의 다른 글

[Git] merge 취소  (0) 2023.01.31
[Git] 캐시 날리기  (0) 2021.08.26
[Git] ignore - springBoot application.properties  (0) 2021.08.09

BELATED ARTICLES

more