Digamos que eu tenha um ramo nomeado coolbranch
no meu repositório.
Agora, decidi excluí-lo (remotamente e localmente) com:
git push origin :coolbranch
git branch -D coolbranch
Ótimo! Agora o ramo é realmente excluído.
Mas quando eu corro
git branch -a
Eu ainda recebo:
remotes/origin/coolbranch
Algo a se notar é que, quando clono um novo repositório, tudo está bem e git branch -a
não mostra o ramo.
Eu quero saber - existe uma maneira de excluir o ramo da branch -a
lista sem clonar uma nova instância?
git
git-branch
yonix
fonte
fonte
git fetch -p
(ougit pull -p
), as ramificações remotas serão removidas.Respostas:
git remote prune origin
, conforme sugerido na outra resposta, removerá todos esses ramos obsoletos. Provavelmente, é isso que você deseja na maioria dos casos, mas se você deseja remover apenas esse ramo de rastreamento remoto específico, deve:(
-r
É fácil esquecer ...)-r
nesse caso, "Listará ou excluirá (se usado com-d
) as ramificações de rastreamento remoto". de acordo com a documentação do Git encontrada aqui: https://git-scm.com/docs/git-branchfonte
git remote prune origin
ou qualquer forma degit fetch --prune
sinalização não funcionou para mim no meu caso. ... Masgit branch -d -r origin/feature/branch-name
funcionou. Não tenho certeza se isso tem algo a ver com estar sob ofeature
namespace (fluxo git), mas foi assim que aconteceu, no caso de algum googler descobrir que isso acontece com eles.Tentar:
Na documentação remota do Git :
ameixa seca
fonte
git pull --prune
mencionado no stackoverflow.com/a/17983126/94687 E:git remote update --prune
Não se esqueça do incrível
que busca e poda todas as origens.
fonte
git remote prune origin
e semelhante aogit pull --prune
mencionado em stackoverflow.com/a/6127884/94687 e stackoverflow.com/a/17983126/94687, respectivamente. E:git remote update --prune
git branch -a
git branch -a
No nosso caso particular, usamos o Stash como nosso repositório Git remoto. Tentamos todas as respostas anteriores e nada estava funcionando. Acabamos tendo que fazer o seguinte:
Então, quando os usuários foram buscar alterações, eles precisavam fazer o seguinte:
fonte
git branch -d branch-name
trabalhou para mim. Observe-D
para-d
. De fato, quando tentei com D maiúsculo,-D
ele criou um novo ramo com o nome -DUsar:
Onde
<remote>
está um nome de fonte remota, como origem ou upstream .Exemplo:
git remote prune origin
fonte
git remote prune
,git prune
,git fetch --prune
.