Quando sono l'unico a impegnarmi, costruisco e collaudo prima che effettivamente sto commettendo. Di solito uso un target makefile come:
make sense
Che configura, costruisce, esegue tutti i test (valgrind aware), esegue i lint, ecc. Come so che sarò l'unico a spingere, non ho davvero bisogno della potenza di qualcosa come Hudson.
Inoltre, in un ambiente in cui ci sono diversi rami che alimentano un repository principale, se tutti seguono il pull sempre prima di eseguire il commit o push, il server CI potrebbe essere un po 'sopra l'uccisione. Una regola ben scritta secondo cui l'autore di ciò che ha rotto l'ultima build acquista la pizza di venerdì, di solito mantiene le cose senza intoppi:)
Se si entra in una situazione in cui un progetto è chiaramente diviso in sottosistemi che hanno i propri leader, è veramente necessario prendere in considerazione l'utilizzo di qualcosa come Hudson. Qualcuno potrebbe testare localmente, perdere una gara con un altro sottosistema e finire per spingere qualcosa di tossico.
Inoltre, se stai mantenendo un fork di un progetto in rapido movimento (ad esempio, il tuo set di patch per il kernel Linux), dovresti prendere in considerazione l'idea di usare qualcosa come Hudson, anche se sei "solo" su quel progetto . Questo è particolarmente vero se si dirama / ri-base direttamente dalla linea principale.