Qu'est-ce que Git élagage?

J'ai accidentellement élagué des branches distantes et je ne sais pas vraiment quelle est la conséquence de ceci (j'ai cliqué sur le bouton "élaguer les branches distantes" dans les Extensions Git, pensant qu'il supprimerait une branche distante).

La documentation officielle dit "git-prune-Prune tous les objets inaccessibles de la base de données d'objets". Je ne comprends pas vraiment ce que cela signifie. Je suppose que cela aurait pu supprimer les branches fusionnées mais je ne suis pas vraiment sûr.

44
demandé sur 1615903 2016-03-18 14:05:57

3 réponses

"élaguer les branches distantes" dans les Extensions Git exécute la commande git remote prune, qui supprime vos branches de suivi distantes locales où la branche n'existe plus sur la télécommande.

Voir ici: https://git-scm.com/docs/git-remote#git-remote-empruneem

43
répondu 1615903 2017-07-05 13:47:21

Cette poubelle juste recueille vos branches.

Cela signifie que si un objet (un commit) ne peut être atteint dans aucun des ancêtres de votre branche, il sera supprimé pour la base de données git, et en tant que tel ne pourrait plus être atteint.

Cela nettoie un peu le dépôt git et le rend plus léger.

19
répondu blue112 2016-03-18 11:09:41

Il peut y avoir des branches de fonctionnalité distantes qui sont supprimées après les avoir fusionnées en master. Nous aurions pu supprimer les branches de fonctionnalité comme un moyen de nettoyer. Mais si vous avez extrait la branche supprimée du système local et défini le statut comme suivi, git pull ne supprimera pas ces branches locales (car celles-ci sont déjà déconnectées du serveur). Pour nettoyer ce genre de branches orphelines locales, la commande git prune sera utile pour aider.

0
répondu Santhosh J 2016-03-18 12:00:05