Téléchargez depuis le site officiel https://code.google.com/p/gitinspector/ et décompressez. Nécessite git et Python 2.6 ou supérieur, avec CentOS 6.x yum est probablement bien.
gitinspector.py [facultatif] [chemin du référentiel git]
Le résultat de l'analyse est sorti en standard, donc si vous souhaitez l'enregistrer dans un fichier, utilisez la redirection.
gitinspector.py -f java,conf,css,html,js,properties,sh,vm,xml -F htmlembedded -THmrl /home/mriit/ITRM > /var/www/html/inspector_simple.html
Spécifiez l'extension du fichier que vous souhaitez analyser avec -f, séparés par des virgules, spécifiez le format de sortie avec -F et la valeur par défaut est le format texte. Le format html fait référence à jQuery, etc. de l'extérieur, et le html intégré est celui qui les intègre. Il existe officiellement différents échantillons, dont certains sont énumérés ci-dessous.
Pour chaque auteur, le nombre de commits, le nombre de lignes ajoutées, le nombre de lignes supprimées, le taux de changement, le nombre de lignes modifiées pour chaque mois (-W pour chaque semaine), etc. sont affichés.
Quand je l'ai utilisé tel quel, j'ai eu l'erreur "git blame does not have e option". Confirmé que git 1.7.1 n'a pas la responsabilité de -e. Il y a une description dans blame.py, alors j'ai décidé de jouer avec.
Après avoir essayé diverses choses, -n semble être la bonne réponse, alors faites la partie pertinente comme suit
blame.py
blame_string = "git blame -n -w {0} ".format("-C -C -M" if hard else "") + \
Ensuite, il semble que l'acquisition du nom de l'auteur ne se soit pas bien déroulée ... La méthode suivante prend-elle un e-mail de la sortie de git blame et prend-elle le nom de l'auteur en fonction de celui-ci?
blame.py
@staticmethod
def get_author_email(string):
author_email = re.search(" \((.*?)\d\d\d\d-\d\d-\d\d", string)
return author_email.group(1).strip().lstrip("<").rstrip(">")
changes.py
def get_latest_author_by_email(self, name):
return self.authors_by_email[name]
Quand j'ai blâmé dans mon environnement, le nom de l'auteur apparaît, alors j'ai pensé qu'il valait mieux ne pas le faire, alors j'ai changé la méthode ci-dessus pour renvoyer le nom que j'ai obtenu, et cela a fonctionné. .. Je pense qu'il existe une solution plus appropriée, mais pour le moment, c'est celle-là.
C'est plein de merde, mais je suis content d'avoir obtenu les informations du référentiel pour le moment. Il peut y avoir eu un problème avec git également. Regardez ceci régulièrement lorsque vous développez avec git. Si la période est courte, il peut être préférable de l'afficher chaque semaine.
Recommended Posts