Auparavant, j'ai apprécié la capacité de TortoiseSvn à générer des statistiques de commit simples pour un référentiel SVN donné. Je me demande ce qui est disponible dans Git et je suis particulièrement intéressé par:
- Nombre de commits par utilisateur
- Nombre de lignes modifiées par utilisateur
- activité au fil du temps (par exemple, les changements hebdomadaires agrégés)
Des idées?
git
statistics
logging
code-statistics
Jesper Rønn-Jensen
la source
la source
git shortlog -sn --no-merges
supprimez également les "validations de fusion" du décompte.Premièrement, vous n'avez rien à extraire (comme dans l'extraction réseau), car vous avez tout le référentiel et toute l'histoire localement. Je suis presque sûr qu'il existe des outils qui vous donneront des statistiques, mais parfois vous pouvez simplement être créatif avec les lignes de commande. Par exemple, ceci (juste hors de ma tête) vous donnera le nombre de commits par utilisateur:
D'autres statistiques que vous avez demandées peuvent nécessiter davantage de réflexion. Vous voudrez peut-être voir les outils disponibles. Recherche de
git statistics
points sur Google pour l'GitStats
outil, avec lequel je n'ai aucune expérience et encore moins d'idée de ce qu'il faut pour le faire fonctionner sous Windows, mais vous pouvez essayer.la source
git shortlog -s -n
(de stackoverflow.com/questions/1828874/… )git shortlog
est en effet la bonne commande ici, mais même sans elle, la commande awk complexe ci-dessus peut être remplacée par| sort | uniq -c
Le meilleur outil que j'ai identifié jusqu'à présent est gitinspector. Il donne le rapport d'ensemble par utilisateur, par semaine, etc.
Vous pouvez installer comme ci-dessous avec npm
Les détails pour obtenir les liens sont ci-dessous
des exemples de commandes sont
etc
la source
Merci au hacker d'avoir répondu à cette question. Cependant, j'ai trouvé que ces versions modifiées étaient meilleures pour mon utilisation particulière:
(en utilisant awk car je n'ai pas gawk sur mon mac, et en triant avec le comitter le plus actif en haut.) Il génère une liste comme ceci:
la source
sort -rn
.-n
n'est pas nécessaire danssort -rn
. J'utilise un mac, mais "trier numérique" ne fait tout simplement aucune différence pour les exemples que j'ai essayésgit shortlog -sn
?Voici des moyens d'obtenir des statistiques pour une branche spécifique ou deux hachages.
la clé ici est la possibilité de faire HASH..HASH
Ci-dessous, j'utilise le premier hachage d'une branche à la tête qui est la fin de cette branche.
Afficher le total des validations dans une branche
Afficher le total des validations par auteur
la source
Notez que, si votre dépôt est sur GitHub , vous disposez désormais (mai 2013) d'un nouvel ensemble d'API GitHub pour obtenir des statistiques intéressantes.
Voir " Fichier CRUD et statistiques du référentiel désormais disponibles dans l'API "
Cela inclurait:
la source
J'ai écrit un petit script shell qui calcule les statistiques de fusion (utile lorsqu'il s'agit d'un flux de travail basé sur une branche de fonctionnalité). Voici un exemple de sortie sur un petit référentiel:
la source
Voir ce projet gitstat
http://mirror.celinuxforum.org/gitstat/
la source
Voici un simple script ruby que j'ai utilisé pour obtenir l'auteur, les lignes ajoutées, les lignes supprimées et le nombre de validations de git. Il ne couvre pas les engagements au fil du temps.
Notez que j'ai une astuce où il ignore tout commit qui ajoute / supprime plus de 10000 lignes car je suppose qu'il s'agit d'une importation de code d'une sorte, n'hésitez pas à modifier la logique pour vos besoins. Vous pouvez mettre ce qui suit dans un fichier appelé gitstats-simple.rb, puis exécuter
contenu de gitstats-simple.rb
la source
DataHero facilite désormais l'extraction des données Github et l'obtention de statistiques. Nous l'utilisons en interne pour suivre nos progrès à chaque étape.
https://datahero.com/partners/github/
Comment nous l'utilisons en interne: https://datahero.com/blog/2013/08/13/managing-github-projects-with-datahero/
Divulgation: je travaille pour DataHero
la source
Vous pouvez utiliser gitlogged gem ( https://github.com/dexcodeinc/gitlogged ) pour obtenir des activités par auteur et par date. Cela vous donnera un rapport comme celui-ci:
qui renvoie la sortie suivante
la source
Modifiez https://stackoverflow.com/a/18797915/3243930 . la sortie est très proche des données graphiques de github.
la source
Si vous utilisez github, PR Count est une application github conçue pour afficher les statistiques de contribution.
la source