Android

Comment supprimer une branche git locale et distante

Network • GitHub & Git Foundations

Network • GitHub & Git Foundations

Table des matières:

Anonim

Les succursales font partie du processus de développement quotidien et l'une des fonctionnalités les plus puissantes de Git. Une fois qu'une branche est fusionnée, elle ne sert à rien, sauf pour la recherche historique. Il est courant et recommandé de supprimer la branche après une fusion réussie.

Ce guide explique comment supprimer des branches Git locales et distantes.

Supprimer une branche Git locale

Pour supprimer une branche Git locale, utilisez la commande git branch avec l'option -d ( --delete ):

git branch -d branch_name

Deleted branch branch_name (was 17d9aa0).

error: The branch 'branch_name' is not fully merged. If you are sure you want to delete it, run 'git branch -D branch_name'.

Comme le message ci-dessus le dit, vous pouvez forcer la suppression en utilisant l'option -D qui est un raccourci pour --delete --force :

git branch -D branch_name

Veuillez noter que si vous supprimez une branche non fusionnée, vous perdrez toutes les modifications de cette branche.

Pour répertorier toutes les branches contenant des modifications non fusionnées, utilisez la commande git branch --no-merged .

Si vous essayez de supprimer la branche actuelle, vous obtiendrez le message suivant:

error: Cannot delete branch 'branch_name' checked out at '/path/to/repository'

Vous ne pouvez pas supprimer la branche sur laquelle vous vous trouvez actuellement. Commencez par passer à une autre branche, puis supprimez le branch_name la branch_name :

git checkout master git branch -d branch_name

Supprimer une branche distante Git

Dans Git, les branches locales et distantes sont des objets distincts. La suppression d'une branche locale ne supprime pas la branche distante.

Pour supprimer une branche distante, utilisez la commande git push avec l'option -d ( --delete ):

git push remote_name --delete branch_name

remote_name est généralement d' origin :

git push origin --delete branch_name

… - branch_name

Il existe également une commande alternative pour supprimer une branche distante, c'est au moins pour moi plus difficile à retenir:

git push origin remote_name:branch_name

error: unable to push to unqualified destination: branch_name The destination refspec neither matches an existing ref on the remote nor begins with refs/, and we are unable to guess a prefix based on the source ref. error: failed to push some refs to '[email protected]:/my_repo'

Dans de telles situations, vous devrez synchroniser votre liste de succursales avec:

git fetch -p

L'option -p indique à Git de supprimer toutes les références de suivi à distance qui n'existent plus sur le référentiel distant avant la récupération.

Conclusion

Dans ce didacticiel, vous avez appris à supprimer des branches Git locales et distantes. Les succursales sont essentiellement une référence à un instantané de vos changements et ont un cycle de vie court. Une fois la branche fusionnée dans le maître (ou une autre branche principale), elle n'est plus nécessaire et doit être supprimée.

Avec la commande git branch , vous pouvez également renommer, créer et répertorier les branches Git locales et distantes.