기존 Git 리포지토리를 소스 리포지토리로 복제
기존 Git 리포지토리를 Amazon CodeCatalyst의 빈 소스 리포지토리에 복제할 수 있습니다. 이는 이전에 다른 Git 리포지토리 공급자에서 호스팅된 코드를 사용하여 CodeCatalyst를 시작하는 빠른 방법입니다. 미러 복제본을 생성한 다음 미러를 CodeCatalyst 로 푸시하여 리포지토리의 콘텐츠를 복제할 수 있습니다. 또는 CodeCatalyst에 콘텐츠를 추가하려는 리포지토리의 로컬 리포지토리가 있는 경우 CodeCatalyst 소스 리포지토리를 로컬 리포지토리에 다른 원격 리포지토리로 추가한 다음 빈 소스 리포지토리로 푸시할 수 있습니다. 두 접근 방식 모두 동일하게 유효합니다. 미러 복제본을 사용하면 브랜치를 매핑할 뿐만 아니라 모든 참조를 매핑합니다. CodeCatalyst에서 리포지토리의 작업 복사본을 생성하는 간단하고 깨끗한 방법입니다. 빈 CodeCatalyst 소스 리포지토리를 가리키는 로컬 리포지토리에 원격 를 추가하면 리포지토리 콘텐츠가 CodeCatalyst에 추가되지만, 로컬 리포지토리에서 CodeCatalyst 소스 리포지토리와 원래 Git 원격 리포지토리로 푸시할 수도 있습니다. 이는 코드를 서로 다른 원격 리포지토리에 유지하려는 경우 유용할 수 있지만 다른 개발자가 원격 리포지토리 중 하나에만 코드를 커밋하는 경우 충돌이 발생할 수 있습니다.
다음 절차에서는 기본 Git 명령을 사용하여 이 작업을 수행합니다. 복제를 포함하여 Git에서 작업을 수행하는 방법은 다양합니다. 자세한 내용은 Git 설명서
중요
콘텐츠를 복제하려면 먼저 CodeCatalyst에서 빈 리포지토리를 생성해야 합니다. 개인 액세스 토큰도 있어야 합니다. 자세한 내용은 빈 소스 리포지토리 생성 및 개인용 액세스 토큰 생성 섹션을 참조하세요.
git clone --mirror
를 사용하여 기존 Git 리포지토리를 CodeCatalyst에 복제
-
CodeCatalyst 콘솔에서 빈 리포지토리를 생성한 프로젝트로 이동합니다.
-
프로젝트의 요약 페이지에서 목록에서 빈 리포지토리를 선택한 다음 리포지토리 보기를 선택합니다. 아니면 탐색 창에서 코드를 선택한 다음 소스 리포지토리를 선택합니다. 프로젝트의 소스 리포지토리 목록에서 빈 리포지토리의 이름을 선택합니다.
-
빈 리포지토리의 HTTPS 복제 URL을 복사합니다. 미러 복제본을 푸시하려면 이 기능이 필요합니다. 예를 들어, ExampleCorp 스페이스의 MyExampleProject 프로젝트에서 소스 리포지토리 이름을 MyExampleRepo로 지정하고 사용자 이름이 LiJuan인 경우 복제 URL은 다음과 같이 보일 수 있습니다.
https://
LiJuan
@git.us-west-2.codecatalyst.aws/v1/ExampleCorp
/MyExampleProject
/MyExampleRepo
-
명령줄 또는 터미널 창에서
git clone --mirror
명령을 사용하여 CodeCatalyst 에 복제하려는 Git 리포지토리의 미러 복제본을 생성합니다. 예를 들어 GitHub에서 codecatalyst-blueprints 리포지토리의 미러 복제본을 생성하려면 다음 명령을 입력합니다.git clone --mirror
https://github.com/aws/codecatalyst-blueprints.git
-
디렉터리를 복제를 생성한 디렉터리로 변경합니다.
cd
codecatalyst-blueprints.git
URL과 대상 CodeCatalyst 소스 리포지토리의 이름, --all 옵션을 지정하여 git push 명령을 실행합니다. (여기서 URL은 3단계에서 복사해 놓은 것입니다.) 예시:
git push https://
LiJuan
@git.us-west-2.codecatalyst.aws/v1/ExampleCorp
/MyExampleProject
/MyExampleRepo
--all
원격 리포지토리를 추가하고 로컬 리포지토리를 CodeCatalyst로 푸시하려면
-
CodeCatalyst 콘솔에서 빈 리포지토리를 생성한 프로젝트로 이동합니다.
-
프로젝트의 요약 페이지에서 목록에서 빈 리포지토리를 선택한 다음 리포지토리 보기를 선택합니다. 아니면 탐색 창에서 코드를 선택한 다음 소스 리포지토리를 선택합니다. 프로젝트의 소스 리포지토리 목록에서 빈 리포지토리의 이름을 선택합니다.
-
빈 리포지토리의 HTTPS 복제 URL을 복사합니다. 미러 복제본을 푸시하려면 이 기능이 필요합니다. 예를 들어, ExampleCorp 스페이스의 MyExampleProject 프로젝트에서 소스 리포지토리 이름을 MyExampleRepo로 지정하고 사용자 이름이 LiJuan인 경우 복제 URL은 다음과 같이 보일 수 있습니다.
https://
LiJuan
@git.us-west-2.codecatalyst.aws/v1/ExampleCorp
/MyExampleProject
/MyExampleRepo
-
명령줄 또는 터미널 창에서 디렉터리를 CodeCatalyst로 푸시하려는 로컬 리포지토리로 변경합니다.
-
git remote -v 명령을 실행하여 로컬 리포지토리의 기존 원격을 확인합니다. 예를 들어 미국 동부(오하이오) 리전에 이름이
MyDemoRepo
인 AWS CodeCommit 리포지토리의 로컬 리포지토리를 복제하는 경우 명령 출력은 다음과 같을 수 있습니다.origin https://git-codecommit.
us-east-2
.amazonaws.com/v1/repos/MyDemoRepo
(fetch) origin https://git-codecommit.us-east-2
.amazonaws.com/v1/repos/MyDemoRepo
(push)리포지토리를 계속 사용하려면 원격 URL을 복사합니다.
-
git remote remove
명령을 사용하여 오리진 가져오기 및 푸시에 대한 CodeCommit 리포지토리 URL을 제거합니다.git remote remove origin
-
git remote add 명령을 사용하여 CodeCatalyst 소스 리포지토리 URL을 로컬 리포지토리의 가져오기 및 푸시 원격 로 추가합니다. 예시:
git remote add origin https://
LiJuan
@git.us-west-2.codecatalyst.aws/v1/ExampleCorp
/MyExampleProject
/MyExampleRepo
이는 CodeCommit 리포지토리 푸시 URL을 CodeCatalyst 소스 리포지토리 URL로 대체하지만 가져오기 URL은 변경하지 않습니다. 따라서 git remote -v 명령을 다시 실행하면 CodeCommit 원격 리포지토리에서 코드를 가져오고(가져오고) 있지만 로컬 리포지토리의 변경 사항을 CodeCatalyst 소스 리포지토리로 푸시하도록 구성되어 있습니다.
origin https://git-codecommit.
us-east-2
.amazonaws.com/v1/repos/MyDemoRepo
(fetch) origin https://LiJuan@git.us-west-2.codecatalyst.aws/v1/ExampleCorp/MyExampleProject/MyExampleRepo (push)git remote set-url
명령을 사용하여 두 리포지토리로 푸시하려는 경우 선택적으로 CodeCommit 원격 URL을 다시 추가할 수 있습니다.git remote set-url --add --push origin https://git-codecommit.
us-east-2
.amazonaws.com/v1/repos/MyDemoRepo
git push
명령을 실행하여 구성된 모든 푸시 원격에 로컬 리포지토리를 푸시합니다. 또는 로컬 리포지토리를 두 리포지토리로 푸시하는 --all 옵션을 지정하여 git push -u -origin 명령을 실행합니다. 예시:git push -u -origin --all
작은 정보
Git 버전에 따라 로컬 리포지토리의 모든 브랜치를 빈 리포지토리로 푸시하는 데 모두 작동하지 않을 수 있습니다. 각 브랜치를 체크아웃하고 별도로 푸시해야 할 수 있습니다.