tipos - ¿Cómo puedo usar gitstats para saber cuántos SLOC tiene un repositorio de Git en total y por comitador?
qué tipos de etiquetas existen en git (1)
Actualización (11 de julio de 2014)
No estoy seguro de qué versión había instalado la primera vez que contesté esta pregunta, pero la última versión me dio un archivo gitstats /path/to/repo/.git /path/to/output/dir/
cuando ejecuté gitstats /path/to/repo/.git /path/to/output/dir/
que contenía exactamente la información que estaba buscando.
Respuesta original
Es bastante simple, lo encontré. Sólo tienes que escribir:
gitstats /path/to/the/repo.git --outputpath=directory_where_you_want_the_output
Produce todo el informe con gráficos, navegación a través de pestañas, etc.
Nota: no puede saber cuántas líneas ha contribuido cada usuario (al menos con la versión de gitstats que me consiguió un apt-get install gitstats
). La salida fue útil, y es una excelente manera de conocer su base de código y sus colaboradores. Hice lo siguiente, para obtener el número de líneas de un usuario en particular:
git log --author="Some Author <[email protected]>" --oneline --shortstat > some_author.txt
Luego, utilicé Python para analizar los datos (ya que había cientos de confirmaciones):
>>> import re
>>> file = open(''some_author.txt'', ''r'')
>>> adds, dels = 0, 0
>>> for line in file.readlines():
... am, dm = re.search(r''/d+(?= insertions)'', line), re.search(r''/d+(?= deletions)'', line)
... if am is not None:
... adds += int(am.group())
... dels += int(dm.group())
...
>>> adds, dels
(5036, 1653)
>>> file.close()
Acabo de instalar GitStats , y estoy en ese punto donde tengo que decir: "¿Ahora, qué?". Veo ejemplos en el sitio de líneas de código de usuario, etc., pero no hay ejemplos de cómo obtener estadísticas simples como esa. No necesito una carta ni nada. Solo quiero poder mostrar los resultados de la consola en una lista de usuarios -> líneas de código o algo así. Cualquier ayuda es muy apreciada.