Necesito recopilar estadísticas de revisión de GitHub en nuestro proyecto

2 minutos de lectura

Necesito extraer información de nuestro repositorio privado de GitHub con respecto a la cantidad de revisiones que cada uno de nuestros colaboradores está haciendo durante un período de tiempo determinado.

He estado revisando la documentación de GitHub, pero no me queda claro si es posible usar su API REST.

Quiero usar los datos para presentar la información en un gráfico en línea automáticamente, por lo que REST es la forma preferida.

¿Alguien sabe si es posible?

Gracias, /J

Aquí hay un enlace a la enumerar revisiones en una solicitud de extracción punto final La llamada devolverá los detalles del usuario para que pueda contar el volumen de revisiones y quién las realizó. Aquí hay un ejemplo de la llamada:

curl -u <USER>:<API_KEY> https://api.github.com/repos/<owner>/<repo>/pulls/<number>/reviews

Puede automatizar esto aún más generando una lista de sus repositorios de la organizaciónluego tirando de una lista de los solicitudes de extracción en cada repositorio. La carga JSON de las solicitudes de extracción incluirá el id necesitará para generar la información de revisión de la solicitud de incorporación de cambios.

la mejor manera es usar los puntos finales de GitHub API v4 (graphql). El atributo de revisiones de objetos PullRequests le permitirá obtener todas las revisiones de un repositorio PR (el atributo de reseñas). Deberá buscar la lista de sus repositorios usando el atributo de los repositorios. La API de graphql es más eficiente que el resto de API (v3).

Dependiendo del tamaño de sus repositorios, el rastreador podría ser complejo de construir porque se enfrentará a cualquier tipo de casos extremos, como problemas de red, lentitud de la API, …

Estoy trabajando en un proyecto llamado monocle que recopila estadísticas de repositorios sobre Pull Request en GitHub. Se mostrarán varias métricas en forma de gráficos o listas. Por ejemplo, verás la cantidad de reseñas y/o comentarios hechos por alguien a otra persona. La herramienta también muestra un gráfico de acordes con la fuerza de revisión entre pares (ver la imagen adjunta).

Aquí está el página de GitHub del proyecto y un enlace al nodo de demostración donde se indexan varias organizaciones de GitHub aquí Ansible.

La herramienta es bastante fácil de implementar usando docker compose.

ingrese la descripción de la imagen aquí

  • ¡Qué herramienta, hombre, esto es exactamente lo que estaba buscando! ¡Muchas gracias!

    – Giacomo Cerquone

    21 oct 2022 a las 9:16

¿Ha sido útil esta solución?