Clonar um repositório Git existente em um repositório de origem
Você pode clonar um repositório Git existente em um repositório de origem vazio no Amazon CodeCatalyst. Essa é uma maneira rápida de começar a usar o CodeCatalyst com código que estava hospedado em outro provedor de repositório Git. Você pode clonar o conteúdo do repositório criando um clone espelho e, depois, enviando o espelho para o CodeCatalyst. Como alternativa, se você tiver um repositório local do repositório cujo conteúdo deseja adicionar ao CodeCatalyst, adicione o repositório de origem do CodeCatalyst como outro remoto ao repositório local e, depois, envie para o repositório de origem vazio. As duas abordagens são igualmente válidas. Usar um clone espelho não apenas mapeia ramificações, como também todas as referências. É uma maneira simples e limpa de criar uma cópia de trabalho do repositório no CodeCatalyst. Adicionar um repositório remoto a um local que aponta para um repositório de origem vazio do CodeCatalyst adicionará o conteúdo do repositório ao CodeCatalyst, mas também permitirá que você faça envios do repositório local para o repositório de origem do CodeCatalyst e para o repositório remoto original do Git. Isso pode ser útil se você quiser manter o código em diferentes repositórios remotos, mas pode gerar conflitos se outros desenvolvedores estiverem confirmando o código para apenas um dos remotos.
Os procedimentos a seguir usam comandos básicos do Git para realizar essa tarefa. Há muitas formas de realizar tarefas no Git, incluindo clonar. Para ter mais informações, consulte a documentação do Git
Importante
Você deve criar um repositório vazio no CodeCatalyst antes de poder clonar conteúdo nele. Também é necessário ter um token de acesso pessoal. Para ter mais informações, consulte Como criar um repositório de origem vazio e Criar um token de acesso pessoal.
Para usar git clone --mirror
para clonar um repositório Git existente no CodeCatalyst
-
No console do CodeCatalyst, navegue até o projeto onde você criou um repositório vazio.
-
Na página de resumo do seu projeto, selecione o repositório vazio na lista e, depois, selecione Visualizar repositório. No painel de navegação, também é possível selecionar Código e escolher Repositórios de origem. Selecione o nome do repositório vazio na lista de repositórios de origem do projeto.
-
Copie o URL do clone HTTPS do repositório vazio. Você precisará dele para enviar o clone espelho. Por exemplo, se você nomeou o repositório de origem MyExampleRepo no projeto MyExampleProject no espaço ExampleCorp e seu nome de usuário for LiJuan, seu URL de clone pode ser parecido com o seguinte:
https://
LiJuan
@git.us-west-2.codecatalyst.aws/v1/ExampleCorp
/MyExampleProject
/MyExampleRepo
-
Em uma linha de comando ou janela de terminal, use o comando
git clone --mirror
para criar um clone espelho do repositório Git que deseja clonar no CodeCatalyst. Por exemplo, se quiser criar um clone espelho do repositório codecatalyst-blueprints no GitHub, insira o seguinte comando:git clone --mirror
https://github.com/aws/codecatalyst-blueprints.git
-
Altere os diretórios para o diretório onde você criou o clone.
cd
codecatalyst-blueprints.git
Execute o comando git push, especificando o URL e o nome do repositório de origem do CodeCatalyst de destino e a opção --all. (Este é o URL que você copiou na Etapa 3.) Por exemplo:
git push https://
LiJuan
@git.us-west-2.codecatalyst.aws/v1/ExampleCorp
/MyExampleProject
/MyExampleRepo
--all
Como adicionar um repositório remoto e enviar um repositório local para o CodeCatalyst
-
No console do CodeCatalyst, navegue até o projeto onde você criou um repositório vazio.
-
Na página de resumo do seu projeto, selecione o repositório vazio na lista e, depois, selecione Visualizar repositório. No painel de navegação, também é possível selecionar Código e escolher Repositórios de origem. Selecione o nome do repositório vazio na lista de repositórios de origem do projeto.
-
Copie o URL do clone HTTPS do repositório vazio. Você precisará dele para enviar o clone espelho. Por exemplo, se você nomeou o repositório de origem MyExampleRepo no projeto MyExampleProject no espaço ExampleCorp e seu nome de usuário for LiJuan, seu URL de clone pode ser parecido com o seguinte:
https://
LiJuan
@git.us-west-2.codecatalyst.aws/v1/ExampleCorp
/MyExampleProject
/MyExampleRepo
-
Em uma linha de comando ou janela de terminal, altere os diretórios para o repositório local que deseja enviar para o CodeCatalyst.
-
Execute o comando git remote -v para ver os repositórios remotos existentes no repositório local. Por exemplo, se você estiver clonando um repositório local de um repositório AWS CodeCommit nomeado
MyDemoRepo
na região Leste dos EUA (Ohio), a saída do comando pode ser parecida com: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)Copie o URL remoto se quiser continuar usando o repositório.
-
Use o comando
git remote remove
para remover os URLs do repositório CodeCommit para busca e envio para origem:git remote remove origin
-
Use o comando git remote add para adicionar o URL do repositório de origem do CodeCatalyst como o repositório remoto de busca e envio para seu repositório local. Por exemplo:
git remote add origin https://
LiJuan
@git.us-west-2.codecatalyst.aws/v1/ExampleCorp
/MyExampleProject
/MyExampleRepo
Isso substitui o URL de envio do repositório do CodeCommit pelo URL do repositório de origem do CodeCatalyst, mas não altera o URL de busca. Portanto, se você executar o comando git remote -v novamente, verá que agora está extraindo (buscando) código do repositório remoto do CodeCommit, mas está configurado para enviar alterações do seu repositório local para o repositório de origem do 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)Você também pode adicionar novamente o URL remoto do CodeCommit se quiser enviar para ambos os repositórios com o comando
git remote set-url
:git remote set-url --add --push origin https://git-codecommit.
us-east-2
.amazonaws.com/v1/repos/MyDemoRepo
Execute o comando
git push
para enviar o repositório local para todos os repositórios remotos de envio configurados. Você também pode executar o comando git push -u -origin, especificando a opção --all de enviar o repositório local para ambos os repositórios. Por exemplo:git push -u -origin --all
dica
Dependendo da sua versão do Git, --all pode não funcionar para enviar todas as ramificações do repositório local para o repositório vazio. Talvez seja necessário conferir e enviar cada ramificação separadamente.