Je suis conscient que les succursales ne stockent pas vraiment les informations sur le créateur - et qu'elles ne sont qu'un pointeur vers une validation.
Mon objectif est de pouvoir nettoyer mes anciennes branches qui ont été fusionnées à la branche principale et répertorier les branches où cela n'a pas été fait non plus. (Un nettoyage).
C'est différent de "trouver des branches non fusionnées" parce que je veux aussi trouver des branches fusionnées, et je veux le faire par auteur.
Ma question est: Existe-t-il un script pour lister les branches git créées par moi?
Cette commande répertorie toutes les branches et leurs noms d'auteur
git for-each-ref --format=' %(authorname) %09 %(refname)' --sort=authorname
Si vous utilisez github, vous pouvez également visiter https://github.com/author/repo/branches/yours pour obtenir toutes vos succursales
Si vous souhaitez simplement supprimer toutes les branches déjà fusionnées, vous pouvez nous utiliser la commande
git branch --merged | grep -v "\*" | grep -v master | grep -v dev | xargs -n 1 git branch -d
Pour plus de détails sur git for-each-ref
visitez ici .
Comme une légère condensation de la réponse de SachinSunny ci-dessus, vous pouvez utiliser les fonctionnalités d'expression régulière de grep pour accomplir une commande plus simple:
git branch --merged | grep -Pv "\*|master|dev" | xargs -n 1 git branch -d