Découvrez qui travaille sur ce qui est utile
Sommaire
Résumé
-
Git-qui fournit des informations complètes basées sur des auteurs au lieu d'une simple paternité ligne par ligne.
-
Vous pouvez utiliser GIT-WHO pour identifier les principaux contributeurs, afficher la hiérarchie du projet et suivre les contributions au fil du temps.
-
Git-qui propose des options pour personnaliser sa sortie, filtrer ses résultats et exclure les engagements de fusion pour des statistiques précises.
Git Blame est utile, mais il ne vous parle que de la paternité ligne par ligne. Lorsque vous souhaitez un aperçu complet d'auteur de vos projets open source, essayez plutôt cet outil.
Qu'est-ce que Git-Who et en quoi est-il différent de Git Blame?
git-qui est une commande git personnalisée qui montre des informations utiles et intéressantes sur les auteurs de Commits dans un référentiel. Vous pouvez l'utiliser pour découvrir qui a mis à jour le code le plus récemment, que les auteurs ont contribué le plus dans son ensemble et qui travaille sur des sous-composants spécifiques.
Bien que la commande GIT intégrée GIT Blame puisse vous parler des auteurs de lignes individuelles de code, Git-Who donne des détails sur les fichiers, les répertoires et les projets entiers.
En rapport
Comment afficher l'historique des engagements avec Git Log
Git Tracks s'engage au fil du temps, vous permettant de suivre la progression et l'historique de votre code.
Git-qui est basé sur un terminal, mais il produit une sortie attrayante et lisible en affichant ses données dans les tables et en la mettant en surbrillance avec des couleurs.
Comment installer et utiliser git-who
La façon la plus simple d'installer Git-qui est avec le gestionnaire de package Homebrew:
brew install git-who
Le logiciel est également facile à installer à partir de Source ou vous pouvez télécharger un binaire précompilé à partir de la page des versions du projet.
Une fois installé, vous pouvez l'exécuter en utilisant git-who ou git qui Dans un répertoire de référentiel GIT:
Assurez-vous que le binaire git-qui est sur votre chemin, surtout si vous l'avez construit à partir de la source. Cela vous permettra d'utiliser le git qui forme de la commande.
Cette vue par défaut est la sous-commande de table. Cela montre un joli résumé des principaux contributeurs, parallèlement à leur dernier montage et à leur nombre total de commits. Git-qui prend en charge deux autres commandes: Tree et Hist.
La sous-commande d'arbre montre la hiérarchie complète du référentiel, avec le meilleur contributeur aux côtés de chaque répertoire, suivi de leurs validations totales.
La troisième sous-commande est Hist, pour «l'histoire». Cette vue montre un calendrier de contributions par date, vous permettant de suivre les contributeurs du projet au fil du temps:
Il s'agit également d'un histogramme, vous pouvez donc rapidement repérer les périodes avec le plus de validations.
Certaines commandes peuvent prendre beaucoup de temps, en particulier sur un grand référentiel comme le noyau Linux. Pour les accélérer, essayez de filtrer les résultats à l'aide des options avancées de Git-Who.
Caractéristiques avancées de Git-Who
Chacun des sous-commandes de Git-Who a des défauts raisonnables, mais vous verrez des résultats très différents en fonction de la taille et de la structure de votre référentiel. Par exemple, courir git-who arbre Dans un énorme référentiel produira de nombreuses lignes de sortie.
Le programme GIT-WHO prend en charge plusieurs options pour vous aider à modifier son comportement et sa sortie. Toutes les sous-commandes vous permettent d'utiliser – auteur pour inclure uniquement des auteurs spécifiques et –nauther pour les exclure. Ils acceptent également – sur et – sur des options pour limiter la sortie par date:
Il est important de noter que les statistiques de Git-Who n'incluent pas les engagements de fusion par défaut. Cela peut faire beaucoup de différence, selon la façon dont le référentiel est géré. Par exemple, Linus Torvalds manque visiblement dans les statistiques de son propre référentiel Linux:
Mais, en tant que mainteneur global, Torvalds gère un grand nombre de fusions et est de loin le plus grand contributeur lorsque les fusions sont prises en compte, en utilisant l'option –Merge:
Personnalisation du tableau Git-who
La table par défaut trie par total commits. Vous pouvez changer cela pour trier les auteurs par leur engagement le plus récent en utilisant l'option -m:
L'option -L se concentre sur les lignes modifiées plutôt que sur les engagements. Il trie par les lignes modifiée et affiche le nombre de fichiers modifiés, le nombre de lignes ajoutés et les lignes supprimées:
Vous pouvez également trier la sortie par des fichiers modifiés à l'aide de -f ou par le premier changement avec -c.
Personnalisation du git-who arbre
La première chose que vous voudrez peut-être faire avec Tree est de limiter sa profondeur. Si votre référentiel contient de nombreux fichiers et répertoires, la commande d'arborescence par défaut générera beaucoup de sortie. L'option -D vous permet de spécifier la profondeur, vous pouvez donc afficher les informations sur l'auteur uniquement pour les répertoires de niveau supérieur, par exemple:
L'option -L sélectionnera l'auteur avec le plus de lignes modifiées au lieu de celle avec le plus de validations. Il annette chaque fichier et répertoire avec le nombre de lignes que chaque auteur a ajoutées et supprimées à ce point:
Personnalisation du git-qui hist
La sous-commande HIST a déjà une fonction intégrée soignée, choisissant automatiquement une vue de jour, de mois ou d'année en fonction de l'âge du référentiel:
Les options –Since et – Tuntil fonctionnent bien avec HIST, pour restreindre la période sur laquelle elle rapporte.
Ces options sont assez flexibles dans le format qu'ils acceptent, alors essayez d'expérimenter. Par exemple, tout cela devrait fonctionner:
-
–Since = 2010
-
–Since = « 2010-09-01 12:00:00 »
-
–Since = hier
-
–Since = « il y a 3 semaines »
-
–Since = « 24 février »