Domanda

Uso la versione on demand (ospitata) di FogBugz. Vorrei iniziare a utilizzare Mercurial per il controllo del codice sorgente. Vorrei integrare FogBugz e un repository BitBucket. Ci ho provato un po ', ma le cose non stavano andando molto bene.

FogBugz richiede di collegare il client Mercurial a uno script python fogbugz.py. TortoiseHg non sembra avere la directory hgext a cui fanno riferimento nelle istruzioni.

Quindi qualcuno ha fatto con successo qualcosa di simile?

È stato utile?

Soluzione

Dai suoni di ciò che si desidera eseguire l'hook sul computer locale. Il gancio e le istruzioni sono destinati all'uso sul server centrale.

Se sei l'unico che lavora nel tuo repository o non ti dispiace impegnarti a non mostrarti in FB fino a dopo aver fatto un pull, allora puoi aggiungere l'hook localmente al tuo clone primario, Se stai usando il tuo clone primario allora devi fare qualcosa di leggermente diverso da quello che dicono qui: http://bugs.movabletype.org/help/topics/sourcecontrol/ setup / Mercurial.html

Puoi mettere il tuo fogbugz.py dove vuoi, basta aggiungere una linea di percorso alla sezione [fogbugz] di quel file hgrc dei repository:

[fogbugz]
path=C:\Program Files\TortoiseHg\scripts\fogbugz.py

Assicurati solo di aver installato Python. potresti anche voler aggiungere un hook di commit in modo che anche gli commit locali nel repository entrino in FB.

[hooks]
commit=python:hgext.fogbugz.hook
incoming=python:hgext.fogbugz.hook

Sull'installazione di Fogbugz vorrai cambiare inserendo quanto segue nel tuo URL dei log:

^REPO/log/^R2/^FILE

e quanto segue per il tuo url diff:

^REPO/diff/^R2/^FILE

Quando viene eseguito lo script hook, si collega all'installazione dell'FB e gli invia alcuni parametri. Questi parametri sono memorizzati nel DB e utilizzati per generare URL per diff e informazioni di registro. Lo script invia l'URL del repository, questo è nelle impostazioni di base nella sezione [web]. Vuoi che questo URL sia l'URL del tuo repository bitbucket. Questo verrà utilizzato per sostituire ^ REPO dai modelli di URL sopra. Lo script hook passa anche l'id di revisione e il nome del file su FB. Questi sostituiranno ^ R2 e ^ FILE. Quindi, in sintesi, queste sono le cose che vuoi aggiungere al file hgrc nella tua directory .hg:

[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 da ricordare è che FB potrebbe essere avvisato di un check-in prima di inviare effettivamente tali modifiche a bitbucket. Se questa è la causa, fai una spinta e le cose funzioneranno.

EDIT: aggiunta la sezione sul server FB e il riepilogo.

Altri suggerimenti

Post-mortem:

Bitbucket ora ha il supporto di fogbugz nativo, così come altri servizi di post-back.

http://www.bitbucket.org/help/service-integration/

Solo un avvertimento: Fog Creek ha rilasciato Kiln che fornisce hosting Mercurial strettamente integrato con FogBugz e non lo fa ' richiede alcuna configurazione.

Normalmente non "quoterei" " su Stack Overflow (dichiarazione di non responsabilità: sono uno degli sviluppatori Kiln), ma sento che questo risponde direttamente alla domanda originale.

È possibile integrare il repository GIT BitBucket con il tracker di problemi FogBugz, ma sfortunatamente non è documentato correttamente.

Devi seguire i passaggi descritti in https://confluence.atlassian.com / display / BITBUCKET / FogBugz + Service + Management , ma fai attenzione

  1. In CVSSubmit URL devi inserire url SENZA "? ixBug = bugID & amp; sFile = file & amp; sPrev = x & amp; sNew = y & amp; ixRepository = " i parametri.

    Dovrebbe essere solo " https: //your_repo.fogbugz.com/cvsSubmit.asp"

  2. Dovrai menzionare il tuo ID caso FogBugz nel messaggio di commit git inserendo " BugzID: ID " stringa in esso (questo non è documentato ovunque :-() simile a questo:

    git commit -m " Questo è un superbo commit che risolve il caso BugzID: 42 "

Naturalmente, le informazioni di commit verranno inviate a FogBugz dopo aver inviato il commit al server BitBucket, non dopo aver eseguito un commit locale.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top