Skip to content
Latchkey

O Que É git clone?

git clone copia um repositório inteiro, incluindo sua história completa, para a sua máquina e configura um remote para que você possa sincronizar depois.

Clonar é geralmente a primeira coisa que você faz com um projeto. git clone baixa uma cópia completa de um repositório, seus arquivos e toda a sua história, e configura um remote chamado origin apontando de volta para a origem. A partir daí você pode trabalhar totalmente offline e fazer push quando estiver pronto.

O que o clone dá a você

Um clone é uma cópia completa e autônoma do repositório. Você obtém todos os commits, branches e tags da história, além de um diretório de trabalho com checkout na branch padrão e um remote origin configurado. Como a cópia é completa, você pode fazer commit, branch e inspecionar a história sem uma conexão de rede.

Clonando um repositório

Você aponta git clone para uma URL, e o Git cria um diretório com o projeto e sua história.

Cloning and checking history
git clone https://github.com/owner/project.git
cd project
git log --oneline -5

Clones completos versus parciais

Por padrão um clone faz fetch de tudo, o que pode ser grande para projetos antigos. Opções permitem fazer fetch apenas da história recente (um shallow clone) ou limitar quais branches e arquivos são baixados. Isso troca completude por velocidade e espaço em disco, o que importa mais em ambientes automatizados.

Clonando em CI/CD

Quase todo job de CI começa clonando seu repositório em um runner para que ele tenha o código para fazer o build. O tempo de clone é parte de cada execução de pipeline, então é um alvo frequente de otimização. Em runners gerenciados como o Latchkey, uma etapa de checkout rápida mantém esse custo de inicialização baixo ao longo de milhares de jobs.

Dicas de clone

  • O clone dá a você a história completa e um remote origin por padrão.
  • Use um shallow clone no CI quando você só precisa de commits recentes.
  • Limite branches ou use clone parcial para repositórios muito grandes.
  • Lembre-se de que o tempo de clone conta em cada execução de pipeline.

Principais conclusões

  • git clone copia um repositório com sua história completa e configura o origin.
  • Clones shallow e parciais trocam completude por velocidade.
  • O CI clona o repo no início dos jobs, então o tempo de clone importa.

Guias relacionados