Respostas:
EDIT: git fetch --unshallow
agora é uma opção (obrigado Jack O'Connor).
Você pode executar git fetch --depth=1000000
(supondo que o repositório tenha menos de um milhão de confirmações).
git fetch --unshallow
existe (como na resposta do @ sdram), essa resposta não é mais a melhor.
git fetch --depth=2147483647
é a maior profundidade possível para fornecer ao comando.
git fetch --unshallow
, mas ainda não mostra todos os galhos.
O comando abaixo (git versão 1.8.3) converterá o clone raso em normal
git fetch --unshallow
Então, para ter acesso a todas as filiais na origem (obrigado @ Peter nos comentários)
git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*"
git fetch origin
git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*";
git fetch origin
a partir de uma resposta não deve ser o mesmo que editting .git / config com a mão
git fetch --unshallow --update-head-ok origin '+refs/heads/*:refs/heads/*'
trabalhou para mim
Eu precisava aprofundar um repositório apenas para um commit específico.
Depois de ler man git-fetch
, descobri que não se pode especificar um commit, mas pode especificar uma data:
git fetch --shallow-since=15/11/2012
Para aqueles que precisam de aprofundamento incremental, outra man
citação:
--deepen=<depth>
Semelhante a --thpth, exceto que especifica o número de confirmações do limite superficial atual em vez da ponta de cada histórico de ramificação remota.
Nenhuma das mensagens acima fez o truque. Estou tentando trabalhar com tags git a partir de um clone superficial.
Primeiro eu tentei
git fetch --update-shallow
que meio que trabalhou no meio. No entanto, nenhuma tag disponível!
git fetch --depth=1000000
Este último comando realmente buscou as tags e finalmente pude executar
git checkout -b master-v1.1.0 tags/v1.1.0
e acabar com isso.
HTH