Domanda

Al momento sto cercando di convertire un repository SVN a Git esistente, e quindi di utilizzare Reviewboard per le recensioni prima di consentire spinte. Ho da poco iniziato a utilizzare git e sono lontano da un esperto su di esso, ma quello che vorrei fare è di avere un gancio pre-push che corre "post-review" per inviare le modifiche al ReviewBoard. Ho un lavoro che amo fare questo, però sembra che questo non viene propagata automaticamente cloni del repository. Leggendo in giro sembra che questo non viene fatto per evitare costringendo codice eseguibile su un utente, tuttavia questo è un interno di solo repository e vogliamo rispettare questo e un paio di altre politiche. C'è un modo per forzare git per propagare i ganci a cloni remoti o abbiamo bisogno di istruire i nostri sviluppatori per eseguire qualcosa che quei ganci posti nei loro locali pronti contro termine?

È stato utile?

Soluzione

Git ha alcun supporto incorporato per trasferire ganci tra cloni, opzionali o altrimenti. Ha modelli predefiniti che è possibile modificare o aggiungere al repository per i nuovi, ma quelli sono tirati dal file system locale (o file system di rete, a seconda dei casi può essere). E 'possibile che si potrebbe strumento un sistema per copiarli, o mettere i ganci stessi nel repository e chiedere che gli sviluppatori di configurare correttamente il loro clone.

Potrebbe anche essere possibile eseguire il gancio che si desidera sul repository nuda centrale, quando la spinta accade, ma prima che l'arbitro viene aggiornato. Questo potrebbe essere fatto con un pre-ricezione o l'aggiornamento gancio. Se questo è accettabile dipende l'effettiva funzionalità di questo gancio, che non è chiaro dal tuo post.

http://www.reviewboard.org/docs/manual/dev/ faq / suona come forse si dovrebbe incoraggiare i vostri sviluppatori di utilizzare rami argomento. Una volta che sono approvate le modifiche, possono essere fuse in rami di rilascio. Si potrebbe avere un gancio aggiornamento che permette solo spinte a particolari rami degli utenti privilegiati, o qualsiasi altro criterio. Questo potrebbe anche essere fatto utilizzando Gitolite, che si può leggere su a http://progit.org/book /ch4-8.html

Se non sei impegnati a Reviewboard, si potrebbe prendere in considerazione http://code.google.com / p / Gerrit / che è meglio integrato con Git e sostiene in modo esplicito questo flusso di lavoro

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