Exploiter les logs Git pour révéler les insights cachés de l'équipe : habitudes et métriques de projet
L'analyse des logs Git met en lumière des patterns subtils dans les workflows d'équipe, des habitudes personnelles des développeurs à la structure des projets. Bien que pas infaillibles à 100 %, ces techniques offrent des insights uniques pour les tech leads et ingénieurs DevOps.
Extraire des données personnelles des adresses e-mail
Les e-mails des commits révèlent souvent des infos au-delà du contexte pro. Commencez par exporter les logs avec :
git --no-pager log --raw --numstat --oneline --all --reverse --date=iso-strict --pretty=format:"%ad>%aN>%aE>%s" > log.txt
Puis plongez dans l'analyse.
Détecter les années de naissance
Filtrez les e-mails personnels (gmail.com, yandex.ru, mail.ru) et scrutez les pseudos pour des séquences numériques. Supposez des âges de 18–70 ans à partir de l'année en cours.
Révéler les projets perso
Ignorez les e-mails GitHub pros pour construire des liens vers les profils dev, dévoilant hobbies et compétences. Idéal pour évaluer engagement et expertise.
Analyse des appareils
Les configs macOS incluent souvent les noms d'appareils (ex. : Macbook-Air-Alex). Classez les utilisateurs :
- Propriétaires de MacBook Pro ;
- Propriétaires de MacBook Air ;
- Autres (configs variées).
Pas de lien direct avec les rôles (frontend/backend), mais indices sur les standards d'entreprise.
Indices sur l'infra réseau
Pas de nom d'appareil ? macOS utilise parfois l'IP locale. Repérez des patterns (ex. : fins en .49, .50, .51) pour estimer le nombre de devices réseau — précision variable selon la config DHCP.
Patterns de commits et analyse des workflows
Fréquence et style des commits exposent emplois du temps et dynamiques d'équipe.
Cartographier les vacances
Les longues pauses (semaines/mois) signalent vacances, mutations ou changements de job. Dans les équipes matures, ça cartographie fiablement. Les leads en réunion montrent une faible activité comme signe distinctif.
Estimer les jours de congé restants
À partir de l'ancienneté (en supposant 28 jours/an par la loi du travail) et des pauses, calculez les jours non pris. Surveillez les changements d'e-mail pour détecter les transferts d'entité.
Repérer les devs multilingues
Les lapsus linguistiques dans les messages de commit trahissent les langues maternelles. Patterns :
- "and etc" vs. ", etc" (russisme) ;
- Virgule avant "and" dans les listes (style britannique) ;
- Fautes comme "ano" pour "año" (espagnol).
Cataloguez pour inférer les origines — clé pour les équipes remote.
Localiser les bureaux
Combinez fuseaux horaires, e-mails et langues pour identifier les hubs de travail principaux. Moins précis à l'ère remote, mais or pur pour l'historique ou la densité d'équipe.
Insights techniques et métriques de projet
Les logs Git détaillent la santé du code et de l'infra.
Candidats au refactoring
Heuristiques pour flagger les fichiers problématiques :
- Gros (>600 lignes) ;
- Fort churn (>50 modifs) ;
- Ignorez configs/tests (.json, .xml).
Approximatif mais repère les hotspots de dette tech.
Détection d'infra
Notes de merge/PR montrent souvent des repos externes (GitHub, Bitbucket). Trace l'historique des migrations.
Identification des plateformes
Syntaxe des logs varie :
- GitHub : "Merge pull request #..." ;
- Bitbucket : "Pull request #..." ;
- Variations dans les quotes de branches.
Surveille les changements d'outils.
Taille d'équipe et évaluation du backlog
Les numéros de tâches dans les messages alimentent les métriques de perf.
Calcul de vélocité
Étapes :
- Extraites les IDs de tâches (ex. : HABR-123) des commits ;
- Groupez par date pour le volume ;
- Comptez les auteurs uniques — équipe active ;
- Moyenne de tâches par personne par période.
Taux de création de tâches
Croissance hebdo des IDs montre la "vitesse d'entrée". Divisez par la moyenne par personne pour la taille totale du dept (incl. analystes, QA).
Validation via releases
Les releases/hotfixes fréquents lient tâches à fixes, minimisant l'erreur de backlog.
Dimensionnement du backlog
Suivez création vs. dates de démarrage. % backlog révèle charge et planification.
Points clés
- L'analyse des logs Git est un outil puissant pour les insights équipe/projet, mais interprétez de façon probabiliste.
- E-mails et patterns exposent des données perso — éthique et sécu en priorité ; usage corporate seulement avec politiques.
- Métriques tâches (taille équipe, backlog) aident les PM, mais dépendent de la discipline du tracker et du rythme des releases.
- Linguistique des commits aide les équipes remote à repérer diversité et obstacles de comm.
- Heuristiques refactoring (taille, churn) priorisent la dette ; associez à la revue de code.
— Editorial Team
Aucun commentaire pour le moment.