24

我們的團隊正在進行夜間持續集成構建。我們擁有Team Foundation Server並可以使用Team Foundation Build。我對CC.Net更加熟悉,並且以這種方式精益求精,但管理層將所有花在TFS上的錢都看作是想要使用它。Cruise Control .Net vs團隊基金會Build

我更喜歡CC.Net的一些事情是通知的靈活性以及實現自定義腳本的簡易性。

如果您有兩種產品的使用經驗,您更喜歡哪種?爲什麼?

+0

我可以對我不喜歡的那個進行投票嗎? :) – 2008-09-17 05:19:02

+1

@whatknott - 這是一個廉價的方式來嘗試獲得選票... – 2008-09-17 05:27:13

+0

@Steven Murawski - 不是要獲得選票,只是想阻止50個單行的答案。如果它讓你感覺更好,我將它刪除。 – codeConcussion 2008-09-17 15:47:28

回答

29

我用過兩種。我想這取決於你的組織的價值。

由於您熟悉CC Net,所以我不會多說這些。你已經知道是什麼讓它變得很酷。

這就是我喜歡團隊基礎生成:

  • 生成代理。將任何盒子變成構建機器並運行構建都非常簡單。 MSFT得到了這一個權利。
  • 舉報。所有相關的構建結果(包括測試)都存儲在SQL數據庫中,並通過SQL Server Reporting Services進行報告。這是一個非常強大的繪製構建和測試結果的工具。 CC Net沒有內置此功能。
  • 您可以通過MSBUILD進行類似的自定義設置。它基本上與使用楠與CC網

這裏是什麼驅使我關於團隊基礎,建立在牆上:

  • 要構建C++/CLI項目(或運行單元測試... ?)構建代理必須安裝VSTS Dev或Team Suite。這個,朋友,只是瘋了。
  • 如果你在一個大的組織,有很多誰擁有龐大的預算和愛情報告老闆是必須連接到TFS母艦

(不要誤會我的意思,這個具有巨大的價值)或者你需要擴展到一臺多機構建農場,我更喜歡Team Foundation Build。

如果您是一家精益求精的商店,堅持使用CC Net並發展您自己的報告解決方案。這就是我們所做的。

直到我們被收購。並得到了TFS:P

3

自2007年6月份以來,我們一直在使用CruiseControl.net,它對我們非常有用。最好的部分,它很容易集成到SVN,這是一個非常優秀的源代碼管理提供商。

所以我們的設置是:

我們已經進行了一些重大的並行開發和分支a合併經驗非常壯觀。如果你有選擇,我會去上面的設置!

14

我假設你擁有TFS,你將會使用它來進行版本控制。在這種情況下,我會傾向於Team Foundation Build。這就是說,我非常同意Nick。我寫了CruiseControl.NET integration for TFS。它工作正常,併爲您提供與以前相同的構建功能。對我而言,CC.NET的主要優勢在於它完全可擴展,並且與所有主要的SCM和陽光下的構建系統集成在一起。我寫CCFS集成到TFS的主要原因是,在TFS2005中,構建系統沒有開箱即用的CI支持。然而,TFS2008版本得到了很大的改進,團隊繼續非常積極地改進TFS的未來版本。

切換到TFS Build的主要原因是,它會自動將構建信息報告回TFS,這有助於完成報告方面的軟件開發情況。它也很好地集成在TFS的工作項跟蹤端和IDE內部(在Visual Studio和Eclipse中)。這就是說,如果你在Nant腳本上投入很大,不僅僅是編譯和測試你的代碼,還是你已經有了一個自制的報表解決方案,你可能想要堅持你擁有的東西。

5

Team Foundation Build中的真正價值在於它將變更集和工作項目與構建關聯起來。

這使得一些有用的情景:

  • 你可以看一下一個工作項目,並找出構建它被包含在
  • 你可以看一下一個構建,看看哪些代碼更改(和工作項目)它包括

然後當然有這些信息的基礎上建立的報告。但即使這些鏈接本身對非管理類型也很有用。

查看www.tfsbuild.com上的不同Team Build配置的「食譜」。

4

SVN是一個很好的工具,遠遠優越不是真的,SVN與TFS類似於一輛福特皮卡與一輛梅賽德斯500,它完成了工作,但它不漂亮也不舒服,合併有很多被期望。我更喜歡TFS合併工具,因爲它看起來像分支開發人員正在與您一起工作,這就是它的聰明之處。我們的內部SVN似乎被破壞了很多,這就是我們放棄它並去TFS並且沒有回頭的原因。對於敏捷開發商店來說,變更集的擱置非常好,目前TFS上有270多名工程師沒有問題或問題,SVN根本無法處理那種沒有問題的負載。

我更喜歡CC.NET,只是因爲我們在內部開發的工具來擴展報告和管理功能。 TFS的構建是非常緊密集成的,然而當我們升級到SQL 2008時,我們預計會有一個切換。