--branch
também pode pegar tags e desanexar o HEAD naquele commit no repositório resultante.
eu tentei
git clone --branch <tag_name> <repo_url>
Mas não funciona. Retorna:
warning: Remote branch 2.13.0 not found in upstream origin, using HEAD instead
Como usar este parâmetro?
clone
, e fiquei presa ao "por que --branch não funciona". A melhor resposta desse URL foi usadaclone
->checkout
, que não pode resolver minha pergunta. :)Respostas:
Este comando não é suportado no git 1.7.9.5.
Eu uso o git 1.8.3.5 e funciona
fonte
--depth 1
para evitar o download de confirmações não atuais.git tag
não exibirá tagUse a
--single-branch
opção para clonar apenas o histórico que leva à ponta da tag . Isso evita que muitos códigos desnecessários sejam clonados.fonte
--single-branch
equivalente a--depth 1
?--single-branch
está implícito quando--depth
é usado. Do manualWhen creating a shallow clone with the --depth option, this is the default
Será mais rápido que:
Ou
fonte
--depth 1
é uma jóia, muitas pessoas baixam todo o histórico do git apenas para usar oHEAD
.--depth 1
deve ser feito padrão; se alguém tentar excluir um commit anterior, ele deverá fazer o download do restante.Use o comando
para ver se o seu git suporta o comando
Caso contrário, faça o seguinte:
fonte
A clonagem de uma tag específica pode retornar o estado 'desanexado HEAD' .
Como solução alternativa, tente clonar o repositório primeiro e depois faça check-out de uma tag específica. Por exemplo:
Nota: Desde o Git 1.8.5 , você pode usar
-C <path>
, em vez de--work-tree
e--git-dir
.fonte