CruiseControl.NET (cc.net von nun an) hat Warteschlangen bauen (http://confluence.public.thoughtworks.org/display/CCNET/Project+Configuration+Block), die Sie baut auf einem bestimmten Bauauftrag das hängt zu serialisiert erlaubt . Ich bin dabei, dieses Verhalten in der Java-Version von Cruisecontrol zu emulieren, aber die Funktionalität wird nicht eins zu eins zugeordnet. Der Grund dafür, dass ich überhaupt von der .net- zur Java-Version übergehe, ist, dass der Kern der .net-Version mit mono (cc.net nightly build und mono nightly build wie vor zwei Monaten) ablegt. Der Fehler liegt in der Handhabung von Monos-Threads, aber es führt dazu, dass ccnet nicht mehr läuft.
Die Dokumentation hierzu kann schwierig zu finden sein, wenn Sie die Versionsnummern nicht beachten, an die sich die Konfigurationsbeispiele/Dokumentation halten (confluence.public.thoughtworks.org hat die aktualisierte Konfigurationsdokumentation, während ccnet.sourceforge.net Ich weiß, dass die Ccnet höchstwahrscheinlich eine tote Seite ist, aber wenn Sie die Datumsstempel auf jeder Seite, die Sie besuchen, nicht sorgfältig lesen, kann das Sie beißen.
Darüber hinaus sind die SourceControl-Blöcke für CVS und SVN in cc.net granularer und funktionsreicher als ihr Gegenstück in der Java-Version, aber das war kein Problem in meiner Arbeit. Die Java-Version ist auch einfach zu erweitern/modifizieren re: Plugin-Verhalten, aber Sie würden wirklich gerne sehen, dass diese Art von Arbeit Upstream statt Forking geht.
Ich bin sowohl von der Java-Version als auch von der Fork in .net (Modulo-Mono-Laufzeitverhalten) ziemlich beeindruckt, aber Sie wollen wirklich keine der anderen Gabeln von cruisecontrol ausprobieren. Ich hatte periphere Erfahrung mit Hudson, und die Funktionen waren einfach nicht zwingend genug, um mich von Cruisecontrol abzulenken. Hudson hat eine (etwas farbige) Vergleichs-Karte von Hudson und CruiseControl (Java) um http://hudson.gotdns.com/wiki/display/HUDSON/Home
Eine praktikable Alternative ist der Python implementiert Buildbot (http://buildbot.net/trac).Es hat keine schicken Gui-Dashboards und das Setup ist etwas mehr an die Befehlszeile gebunden, aber wenn du verteilte Builds machst, ist es sehr einfach einzurichten und loszulegen.
Teamcity ist auch eine gute Wahl. Es gibt eine gute Frage zu den Unterschieden zwischen teamcity und cc.net http://stackoverflow.com/q/195835/23659 –