git twig distante supprimée mais apparaît toujours dans ‘twig -a’

Disons que j’ai une twig nommée coolbranch dans mon repository.

Maintenant, j’ai décidé de le supprimer (à la fois à distance et localement) avec:

 git push origin :coolbranch git branch -D coolbranch 

Génial! Maintenant, la twig est vraiment supprimée.

Mais quand je cours

 git branch -a 

J’ai toujours:

 remotes/origin/coolbranch 

Quelque chose à noter, c’est que lorsque je clone un nouveau repository, tout va bien et git branch -a ne montre pas la twig.

Je veux savoir – y a-t-il un moyen de supprimer la twig de la branch -a liste sans cloner une nouvelle instance?

git remote prune origin , comme suggéré dans l’autre réponse, supprimera toutes ces twigs périmées. C’est probablement ce que vous voudriez dans la plupart des cas, mais si vous voulez simplement supprimer cette twig de suivi à distance, vous devriez faire:

 git branch -d -r origin/coolbranch 

(Le -r est facile à oublier …)

-r dans ce cas va “List ou delete (si utilisé avec -d) les twigs de suivi à distance.” selon la documentation de git trouvée ici: https://git-scm.com/docs/git-branch

Avez-vous essayé: git remote prune origin

De la documentation à distance git :

prune

Supprime toutes les twigs obsolètes de suivi à distance sous . Ces twigs obsolètes ont déjà été supprimées du référentiel distant référencé par , mais sont toujours disponibles localement dans “remotes / “.

Avec l’option –dry-run, indiquez quelles twigs seront élaguées, mais ne les élagerez pas.

N’oubliez pas le génial

 git fetch -p 

qui va chercher et tailler toutes les origines.

 git remote prune  

est un nom de source distant comme l’ origine ou en amont .

exemple: git remote prune origin

Dans notre cas particulier, nous utilisons Stash comme notre référentiel git distant. Nous avons essayé tout ce qui précède et rien ne fonctionnait. Nous avons fini par faire ce qui suit:

 git branch –D branch-name (delete from local) git push origin :branch-name (delete from remote) 

Ensuite, lorsque les utilisateurs sont allés chercher des modifications, ils devaient procéder comme suit:

 git fetch -p