Domanda

Domande #1 a #4 sul Joel Test a mio parere sono tutti gli strumenti di sviluppo utilizzati e il sistema di supporto per gli sviluppatori:

  1. Non si utilizza il controllo del codice sorgente?
  2. Si può fare una build in un solo passaggio?
  3. Fate build giornaliere?
  4. Hai un database dei bug?

Sono solo curioso di sapere cosa gratis/basso (ma buono) gli strumenti esistenti per la sviluppo di piccoli negozi che non hanno cospicui conti in banca da utilizzare per ottenere una risposta positiva a queste domande.

Per il controllo di origine so Subversion è un ottima soluzione, e se sei un uomo shop si potrebbe anche utilizzare SourceGear s Vault.

Io uso NAnt per i miei progetti più grandi, ma non hanno ancora impostare uno script per costruire il mio installatori, nonché la obfusication strumenti come un singolo passo.Altri suggerimenti?

Se si può rispondere sì a un edificio in un unico passaggio, penso che la creazione di build giornaliere sarebbe stato facile, ma con quali strumenti si consiglia per l'automazione di quelle giornaliere?

Per uno o due uomo squadra, è già stato discusso in MODO che è possibile utilizzare FogBugz Sulla Domanda, ma quali altri bug tracking esistono soluzioni per le piccole squadre?

È stato utile?

Soluzione

  1. controllo del codice sorgente: Subversion o Mercurial o Git
  2. l'automazione della compilazione: NAnt, MSBuild, Rake, Maven
  3. l'integrazione continua: CruiseControl.NET o Continuum o Jenkins
  4. problema di tracking: Trac, Bugzilla, Gemini (se necessario .NETTO e il free-ish)

Non dimenticate di test automatizzati con NUnit, Fit, e WatiN.

Altri suggerimenti

Il mio preferito stack:

1) Subversion.Io sono incuriosito di sorgente distribuita di controllo ma non ho avuto la possibilità di provare qualsiasi rabbia di sicurezza.Per una soluzione centralizzata svn è solida come una roccia.

2) Ant.Maven è una gioia da usare quando si sta lavorando, ma come un vecchio ant hacker trovo maven per essere difficile da seguire, una volta che le cose vanno male.

3) Hudson.Non è stato detto finora, ma sicuramente vale la pena indagare.Incredibilmente utilizzabile e mantenuto strumento.In precedenza abbiamo pagato per il Formicaio Pro che sembrava flakey e stato doloroso per risolvere ogni volta avvitato.

4) Noi paghiamo per jira.Non a buon mercato, ma molto più usabile rispetto a soluzioni open source abbiamo guardato e molto troppo flessibile.

Il mio engineering stack:

  1. Git (mi piace GitHub, ma Git non richiedono una soluzione hosted)
  2. Rake
  3. CruiseControl.rb
  4. FogBugz

Senza dubbio queste scelte sono influenzato dal mio stack di sviluppo, che spesso include Ruby, Rails, SQLite, Firefox, e OSX.

Si consiglia di guardare a una domanda esistente di miniera per la ricerca di un'alternativa al Team di Sistema.Ci sono un sacco di raccomandazioni in là anche.

  1. Git
  2. Fare
  3. Cron
  4. Trac

Sono un uomo di poche sillabe ;-)

Assicurarsi di utilizzare un qualche tipo di controllo di versione in cui gli sviluppatori possono creare facilmente privato rami volenti o nolenti, quindi, private branch e comprimerli in un unico impegnarsi al ramo principale.In quel modo, i singoli sviluppatori---invece per l'organizzazione di---può ottenere i benefici di controllo di versione senza inquinare chiunque altro codice (e di rallentare il loro lavoro) rotto con il commit.

Questa caratteristica è ciò che mi piace di git.Penso sia solo realmente presente nella versione distribuita di sistemi di controllo;utilizzando un DVCS non significa che effettivamente fare sviluppo distribuito, però.

Per quanto riguarda one-step edificio, è l'impostazione predefinita strumento di generazione e funziona abbastanza bene per la maggior parte delle attività.Mi piacerebbe andare con che a meno che non si dispone di un buon motivo per non.

Vuoi giornaliere, mettere il comando di generazione in cron.quotidiano.Impostare un procmail gancio per gestire la posta da cron, se necessario.

Per il bug tracking, uso $(apt-cache search bug tracking).In sostanza, come lungo come si dice "bug tracker" sulla finestra e si sa la gente sta usando, è probabilmente andando a lavorare bene.Tra i clienti abituali sono bugzilla, mantis e trac.

Non ho strumenti per suggerire, ma io ho un suggerimento circa la build giornaliere.Rispondo sempre di sì a questa domanda, anche se non abbiamo giornaliere.Invece, siamo una generazione ogni volta che qualcuno fa un commit.Abbiamo, quindi, rilevare eventuali problemi quasi subito.Se uno qualsiasi dei nostri progetti ha mai abbastanza LOC di costruzione, che prende più banale del tempo, questo permette anche di grazia degrada in direzione di una daily build.

Un buon issue tracker che è relativamente poco costoso era axoSoft OnTime.Io l'ho usato per anni prima di ottenere MS TFS.

Nant e CruiseControl sono graffette del mio ambiente.

Non penso che si ha realmente bisogno di offuscamento su .Al netto di eventuali ulteriori (vedere un'altra risposta)

Non vorrei prendere in considerazione Vault, SVN è davvero il leader di mercato al momento (e gratuito).Git è alla ricerca abbastanza promettente, ma attualmente è a riga di comando solo con una curva di apprendimento ripida.

MSBuild batte NAnt per .Net 2 o 3,5

CC.Net è eccellente.

*4) Redmine

Mi raccomando Bitnami per la sperimentazione di diverse pile.Ha Trac, Redmine, Subversion, così come diversi altri estranei a quelli.

Check out questi articoli su Integrazione Continua con MSBuild, CruiseControl.NET, FxCop, NUnit, NCover e Subversion...

Dello sviluppo del software trincee

Attualmente sto usando SVN, ma ho avuto generalmente un sacco o un problema con le estrazioni di una unità di rete su un dev server.Ci tendono ad essere i problemi di blocco che richiedono un sacco di pesca intorno a fix.Può essere che utilizzando il metodo di accesso WebDav, sarebbe alleviare alcuni di questi problemi, ma non ho ancora sperimentato.

Qualsiasi di Bugzilla, Trac o Fogbugz vi aiuterà con il vostro bug tracking, e offrono una funzione di esportazione, in modo che si può sempre cambiare idea in seguito.Inoltre, se è possibile ottenere il vostro team completamente di buy in, gestione del tempo, il software può anche essere utile per la post-mortems, ecc (se tutti sono motivati a partecipare pienamente.

Per costruire l'automazione e l'integrazione continua di dare un'occhiata a TeamCity da Jetbrains.

Ha un sacco di caratteristiche ed è davvero un debole per impostare e utilizzare.

Se si utilizza Visual Studio 2005/2008 sarà costruire la soluzione direttamente senza la necessità di ulteriore script (se la build è tutto quello che vuoi.)

Sarà, inoltre, eseguire il test di unità e di raccogliere statistiche sul costruire il successo, di test di unità tempi di esecuzione, etc, etc.

Migliore di tutti:La Pro edition è gratuito per le squadre con un massimo di 20 utenti e 3 build agenti.

  1. controllo del codice sorgente:cvs
  2. costruire gnu make
  3. cron job che chiama script bash
  4. bugzilla
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top