Domanda

Il mio ultimo datore di lavoro aveva sviluppato un complesso sistema che è seduto sulla cima di SVN per affrontare il continuo sviluppo:(la gestione del cambiamento) guardate i bug/problemi e di associare commette quando si effettua il commit taggando il bug numero id e (gestione del rilascio tag elementi in SVN come parte di una specifica release basata sul bug/problema del sistema di tracciamento.Questa seconda parte ha avuto un flusso di lavoro associato con esso per ottenere sign-off da parte degli utenti/gestione.Poi, quando è venuto il momento di fare la release (di solito il giovedì sera), si può eseguire un comando di checkout tutti i tag di codice e di distribuirlo.

Il mio nuovo studio che è molto più piccolo e io sono interessato a trovare un low cost/low-manutenzione equivalente, anche se significa solo avere a che fare direttamente con SVN.In particolare, ho regolarmente e si impegna in ritardo-in-il-gioco di rottura di costruzione, e diventa molto difficile determinare che cosa possiamo includere.(Per quanto la gestione di SVN è interessato, io tendo a preferire l'idea di tag rami, perché richiedono meno accortezza, ma sono felice di essere convinto altrimenti.)

Quello che la gente usa per tag impegna per il rilascio e per fare una successiva distribuzione?Ci sono buone soluzioni open-source per la gestione di un ciclo di rilascio che permette di navigare SVN da un browser web e i problemi di tag/si impegna per una release?La cosa migliore che ho visto finora è Jira, ma che appare come un grande strumento (è difficile da configurare e mantenere?).La Apache Foundation, con l'utilizzo di Jira per questo scopo (vedi, per esempio, il Mahout tabella di marcia).

Andando ancora un passo al di là di questo sarebbe lo stesso sistema anche includere l'integrazione continua, in modo che la nostra unità di test può essere eseguito con ogni commit e ogni bug/problema sarebbe poi anche queste informazioni associate.

Nota:Ci sono alcuni leggermente domande correlate su stackoverflow, ma non ci vedo niente di copertura di questo aspetto del ciclo di distribuzione e gestione delle release (vedi release-gestione-in-svn, gestire-il-progetto-del ciclo di vita, e miglior-modo-per-gestire-gestione e modifica di).

È stato utile?

Soluzione

Se stai cercando di costruire-busting checkins troppo tardi nel gioco per risolvere in modo efficiente è sicuramente dovrebbe salire sul treno CI prima di iniziare a preoccuparsi per il processo di rilascio.Facendo gli sviluppatori è responsabile per l'integrità della creazione è un processo molto più facile quando ci sono le e-mail di uscire ogni volta che qualcuno controlli di qualcosa che le viti del cane.Fanno un gioco;Chi rompe la costruzione di babysitter fino alla prossima volta che si rompe.

Alzarsi e correre con CruiseControl (io ho usato CC.NET) non è poi così difficile con subversion (ci ho messo da nessun processo di generazione di parlare di completamente automatizzato di generazione e distribuzione con CC.NET e NAnt in circa un mese, interleaved con responsabilità di altri, naturalmente).

Facciamo anche uso di JIRA, ed è difficile andare storto c'è.Si può avere JIRA guarda la sovversione messaggi di commit per cose come "il PROGETTO Fissi-11" e verrà automaticamente chiudere appropriato JIRA voce.È possibile costruire le note di rilascio da lì.

Altri suggerimenti

Avete indagato il grafico di revisione SVN Tortoise? Se si etichetta ogni release (che, come altri hanno fatto notare non comporta la copia dei file, sia sul server o workstation), allora si può vedere tutte le revisioni in ordine cronologico, con i tag che indicano versioni attuali. È possibile diff tra stampa e / o tronco da hilighting le due revisioni a cui sei interessato e selezionando diff dal menu contestuale

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