¿Cómo puedo integrar un repositorio en bitbucket con el hosted on-demand versión de FogBugz?
-
02-07-2019 - |
Pregunta
Yo uso el de la demanda (hosted) versión de FogBugz.Me gustaría empezar a usar Mercurial para el control de código fuente.Me gustaría integrar FogBugz y un repositorio en BitBucket.Me dio un poco de un intento, pero las cosas no le iban muy bien.
FogBugz requiere que usted conecte su Mercurial cliente a un fogbugz.py secuencia de comandos de python.TortoiseHg no parece tener la hgext directorio que se refieren a las instrucciones.
Así que alguien ha hecho con éxito algo similar?
Solución
A partir de los sonidos de la misma que se desee ejecutar el gancho en su máquina local.El gancho y las direcciones están destinados para uso en el servidor central.
Si usted es el único trabajo en el repositorio o no les importa cometer no aparecen en FB hasta que después de hacer un pull, entonces usted puede agregar el gancho localmente a su clon primario, Si usted está utilizando su clon primario, entonces usted necesita para hacer algo ligeramente diferente de lo que dicen aquí:http://bugs.movabletype.org/help/topics/sourcecontrol/setup/Mercurial.html
Usted puede poner su fogbugz.py en cualquier lugar que desee, sólo tiene que añadir una línea de ruta de acceso a su [fogbugz] de la sección de que los repositorios hgrc archivo:
[fogbugz]
path=C:\Program Files\TortoiseHg\scripts\fogbugz.py
Sólo asegúrese de tener python instalado.usted también puede agregar una confirmación de gancho para que los locales se compromete a que el repositorio también entrar en FB.
[hooks]
commit=python:hgext.fogbugz.hook
incoming=python:hgext.fogbugz.hook
En el Fogbugz instalar usted desea cambiar de poner lo siguiente en el de sus registros url:
^REPO/log/^R2/^FILE
y la siguiente para su diff url:
^REPO/diff/^R2/^FILE
Cuando el gancho ejecuta la secuencia de comandos que se conecta a tu FB instalar y envía un par de parámetros.Estos parámetros se almacenan en la base de datos y se utiliza para generar las urls de los diffs y registro de información.El script envía la dirección url de la repo, esto es, en su baseurl de la configuración [web] de la sección.Desea que esta url la dirección url del repositorio en bitbucket.Este va a ser usado para reemplazar ^REPO a partir de la url de las plantillas anteriores.El script gancho también pasa a la revisión de la id y el nombre del archivo a FB.Estos reemplazará ^R2 y ^ARCHIVO.Así que en resumen este es el material que desea agregar a la hgrc archivo en su .hg directorio:
[extensions]
hgext.fogbugz=
[fogbugz]
path=C:\Program Files\TortoiseHg\scripts\fogbugz.py
host=https://<YOURACCOUNT>.fogbugz.com/
script=cvsSubmit.asp
[hooks]
commit=python:hgext.fogbugz.hook
incoming=python:hgext.fogbugz.hook
[web]
baseurl=http://www.bitbucket.org/<YOURBITBUCKETACCOUNT>/<YOURPROJECT>/
Una cosa para recordar es que FB puede recibir una notificación de un checkin antes de empujar a los cambios en bitbucket.Si esta es la causa de hacer un empuje y las cosas funcionarán.
EDITAR:se agregó una sección sobre el FB servidor y el resumen.
Otros consejos
Post-mortem:
Bitbucket ahora ha nativo fogbugz apoyo, así como el otro post de los servicios.
Sólo un heads-up:Fog Creek ha publicado Horno que proporciona Mercurial hosting estrechamente integrado con FogBugz, y no requiere ninguna configuración.
Yo, normalmente, no se "anuncian" en Stack Overflow (descargo de responsabilidad:Yo soy uno de los del Horno de desarrolladores), pero creo que esto responde directamente a la pregunta original.
Es posible integrar su GIT repositorio en BitBucket con FogBugz issue tracker, pero por desgracia no está bien documentado.
Debes seguir los pasos que se describen en https://confluence.atlassian.com/display/BITBUCKET/FogBugz+Service+Management, pero ten en cuenta que
En CVSSubmit URL que usted necesita para poner la url SIN "?ixBug=bugID&sFile=archivo&sPrev=x&sNew=y&ixRepository=" parámetros.
Debería ser simplemente "https://your_repo.fogbugz.com/cvsSubmit.asp"
Usted tendrá que mencionar su FogBugz caso de IDENTIFICACIÓN en el mensaje de commit git poniendo "BugzID:"ID de cadena (esto no está documentado en cualquier lugar :-( ) similar a este:
git commit-m "Esta es una excelente cometen, lo que resuelve el caso BugzID:42"
Por supuesto, cometer información será enviada a FogBugz después de empujar a su comprometerse a BitBucket servidor, no después de su hacer en un local de confirmación.