Integración de Gitblit con bugtraq

=Integración de Gitblit con Bugtraq= Gitblit nos permite hacer referencias cruzadas a uno o más issue trackers relacionados al repositorio gracias a que implementa la especificación Bugtraq. En este caso presentaremos un ejemplo con JIRA.

Gitblit a JIRA

 * 1) Crear el archivo .gitbugtraq en la raíz del repositorio
 * 2) Agregar como contenido la expresión regular que será parseada (ver Observación)
 * 3) Confirmar el versionamiento de este archivo
 * 4) Integrar el cambio en la rama master

Con esto le delegamos a Gitblit la tarea de buscar la expresión regular en cada texto que maneje (mensaje de commit, comentarios en tickets, asuntos) y se encargará de presentarlo como un link a la URL que le corresponde.

Observación: El contenido de este archivo especificará un patrón a tener en cuenta en los mensajes de commit del repositorio. Este patrón está en forma de expresión regular y debe definirse en base al ID del proyecto en JIRA.

Ejemplo: [bugtraq "jira-myproject-android"] url = https://company.atlassian.net/browse/%BUGID% logregex = (MPRO-\\d+)


 * El proyecto es My Project
 * Nuestro issue tracker es JIRA, sabemos que los URL's de los tickets en JIRA son del estilo https://company.atlassian.net/browse/-
 * Establecemos la expresión regular como 'MPRO-' (literal, ID correspondiente a My Project), seguido de uno o más dígitos.

JIRA a Gitblit
En este caso el proceso es manual y en general hay una relación uno a uno entre incidencia en JIRA y ticket en Gitblit. Dado esto:
 * Se define un campo personalizado de tipo string con el label "Ticket en Gitblit" para el proyecto (Obs.: sólo el administrador puede hacer esto)
 * En cada incidencia de JIRA, se llena este campo con la URL que le corresponde al ticket de Gitblit.

En ocasiones hay casos en los que más de un ticket de gitblit está relacionado a una sola incidencia (Ej.: un mismo cambio en varios repositorios). Si se presenta esta situación, se opta por dejar en blanco el campo personalizado y a continuación enumerar las URLs de los tickets de los repositorios dentro de un comentario en la incidencia.

Referencias

 * Setting up Bugtraq con Gitblit
 * Bugtraq specification