¿Cuántas personas estuvieron involucradas en un proyecto? Basado en el sistema de control de revisiones

StackOverflow https://stackoverflow.com/questions/1813649

Pregunta

¿Cómo sabe cuántos desarrolladores estuvieron involucrados en un proyecto usando un Sistema de Control de Revisión? Un amigo mío encontró esta manera de buscar la respuesta en git log:

git log | grep Author: | sort -u | cut –delimiter=” ” -f2 | sort -u | wc -l

¿Hay una manera directa en git? ¿Qué tal otro Sistema de Control de Revisión como Subversion, Bazaar o Mercurial?

Otros consejos

Para mercurial, hay una extensión para hacer exactamente eso: hg churn .

hg churn ordena por cambio de línea, si desea contar el conjunto de cambios, use hg churn -c .

Para subversión

svn log -q svn://path/to/repo | cut -f 3 -d " "  | sort -u

Hay un complemento de estadísticas para que Bazaar obtenga información diferente sobre los contribuyentes del proyecto:

https://launchpad.net/bzr-stats/

Tampoco conozco una forma directa para Mercurial y una buena búsqueda de toda su documentación tampoco reveló nada. Entonces, aquí hay un comando * nix, similar al que encontró tu amigo, para Mercurial:

hg log | grep user: | cut -c 14- | sort -u | uniq | wc -l

Por cierto, creo que hay un error con el comando para git, el segundo sort -u seguramente debería ser reemplazado por uniq!

Una versión git más simple es:

git log --pretty=tformat:%an | sort -u | wc -l

o si le interesan las direcciones de correo electrónico únicas:

git log --pretty=tformat:%ae | sort -u | wc -l

Mercurial tiene un poderoso lenguaje de plantillas incorporado (ver hg help templates ). Para que pueda obtener una lista de todas las personas en el proyecto sin habilitar la extensión de abandono:

hg log --template '{author}\n' | sort -u

Si las personas han cambiado su dirección de correo electrónico (pero por lo demás han mantenido su nombre igual), puede procesar un poco la palabra clave de plantilla author :

hg log --template '{author|person}\n' | sort -u

Luego agregue wc -l según corresponda a los comandos anteriores.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top