git clone
Copia um repositório para uma pasta nova
O comando 'git clone' baixa um repositório — cada commit, branch e tag — para uma pasta nova, faz checkout do branch padrão e guarda o endereço como o remoto chamado origin. Seu main rastreia origin/main, então git pull e git push funcionam na hora. Com --depth você baixa só os commits mais recentes.
Sinopse
git clone [<options>] <repository> [<directory>]Opções
Escolhendo a opção certa
Completo versus raso
O que é baixado
| Comando | Histórico | Ideal para |
|---|---|---|
git clone <url> | Tudo | Trabalho do dia a dia |
git clone --depth 1 <url> | Só o último commit | Builds de CI, uma olhada rápida |
Exemplos
Clonar por SSH
git clone git@github.com:acme/shop.gitCria a pasta shop.
Clonar por HTTPS
git clone https://github.com/acme/shop.gitO mesmo, via HTTPS.
Escolher o nome da pasta
git clone git@github.com:acme/shop.git my-shopClona em my-shop.
Clone raso
git clone --depth 1 git@github.com:acme/shop.gitSó o último commit.
Exemplos de fluxos de trabalho
git clone git@github.com:acme/shop.gitBaixá-lo
cd shopEntrar nela
git switch -c feature/searchComeçar seu trabalho
Solução de problemas
Permission denied (publickey)
Causa: Sua chave SSH não está configurada no GitHub
Adicione sua chave ao GitHub, ou clone com a URL HTTPS
fatal: destination path 'shop' already exists
Causa: Já existe uma pasta com esse nome
Escolha outro nome de pasta como segundo argumento
Repository not found
Causa: URL errada ou sem acesso
Confira a URL e suas permissões
Dicas e armadilhas
Boas práticas
- ✓Use URLs SSH se você envia com frequência.
- ✓Use --depth 1 em pipelines de CI.
Erros comuns
- ✗Esquecer de entrar na pasta nova com cd antes de rodar comandos git.
- ✗Clonar dentro de outro repositório.
- ✗Clonar de novo para atualizar — isso é o git pull.
Perguntas frequentes
Sim, como branches de rastreamento remoto (origin/…). Trocar para um deles cria o branch local.
git fetch --unshallow.