web-dev-qa-db-fra.com

Git flow supprime-t-il la branche sur le serveur distant?

J'utilise git avec git flow. Ici, git flow a une branche develop. Chaque fois que j'ai besoin de démarrer la fonctionnalité, je tape

git flow feature start new

une nouvelle branche feature/new est créé. Ensuite, je fais les changements et commettre les utilisant

git Push Origin feature/new

Après avoir validé les modifications, je termine la fonction en utilisant

git flow feature finish new

il supprimefeature/new branche localement. Maintenant je suis commuté pour développer une branche par git flow et je tape à nouveau

git Push Origin develop

qui apportent des modifications à la branche du serveur distant develop

Si je tape git branch -a, la nouvelle branche a été supprimée du local mais elle est là sur le serveur avec le nom remotes/Origin/feature/new

Git flow supprime-t-il des branches sur un serveur distant qui sont supprimés sur ma machine locale?

Veuillez me dire si je fais une erreur.

42
Paritosh Singh

En regardant le source il semble que la branche de fonctionnalité distante ne soit supprimée que si vous appelez git flow feature finish avec -F.

Cependant, cela récupère la télécommande avant de terminer la fonctionnalité. De la docs :

- F récupérer à partir de $ Origin avant d'effectuer la finition

Sinon, vous pouvez supprimer la branche distante manuellement avec:

git Push Origin :feature/new
37
Stefan

Puis-je suggérer d'utiliser l'édition git-flow AVH.

Comme Stefan l'a dit, la version originale ne supprime la branche distante que lorsque vous utilisez -F, ce qui est un peu étrange. L'édition AVH corrige ce comportement original, elle supprimera toujours la branche de fonctionnalité locale et distante à la fin, sauf si vous spécifiez

  • --keep, qui conserve le local et le distant.
  • --keeplocal, qui conserve le local, mais supprime le distant.
  • --keepremote, qui conserve la télécommande, mais supprime le local.

Vous pouvez trouver git-flow AVH Edition sur github .

24
Peter van der Does

Ce que je devais faire:

git flow feature delete -f name_feature

Le -f est nécessaire s'il y a des changements à l'intérieur de la branche de fonctionnalité.

git Push Origin --delete feature/name_feature

Cela permet également de supprimer la branche distante.

5
David Prieto