2011-01-10 44 views
1

可以使用MSBuild構建源代碼構建:源代碼目錄之外的構建?msbuild,支持源代碼構建

這是一些其他建築系統中的標準東西,如AutotoolsCMake。當你想要嘗試構建選項或共享一個源代碼樹(可能很大)時,它們非常有用。

對於那些問爲什麼需要這樣的東西:有了這個,我可以做一個結賬(這裏是4GB),做一個構建,恢復到一些特定的修訂版,並做另一個構建而不扔掉第一個構建。或者我可以用一些自定義設置做一個丟棄配置,而不用考慮VS中所有的配置設置。或者在多個自動建設者之間分享結賬。我知道我可以用不同的路徑定義單獨的配置,但是這很麻煩(尤其是在處理多個項目時),這些配置會傳播給其他開發人員(我希望在試驗時避免使用),並使用通用的VCS操作。

+0

目前還不太清楚「外部源目錄」的含義。請描述你的情況和你實際期望發生的事情。 – Filburt 2011-01-11 16:01:29

+0

@Filburt,編輯。 – liori 2011-01-11 18:08:07

回答

0

一個可能的解決方案可能是將您的配置文件移動到單獨的.target文件中。如果你喜歡試驗那些你可以用你的選擇替換.target文件,而其他開發者可以使用默認的.target配置。


我還不確定是否和爲什麼你的源是一個問題,因爲你會將它們導出到可配置的構建路徑。是否因爲將源導出到實驗構建位置需要很長時間?你可以使用預構建的共享組件來進行實驗性構建嗎?


我懷疑你已經遇到了限制,因爲你使用MSBuild就像你的Visual Studio解決方案的CLI一樣。無可否認,MSBuild需要付出相當大的努力來滿足靈活和複雜的要求。也許像CruiseControl這樣的連續集成系統(僅僅是一個名字)就是你要找的,因爲它提供了Autotools和CMake所熟悉的易用性和靈活性。如果「免費」不是您的要求之一,Team Foundation Server可能是您爲您推薦MSBuild的一個選項。

4GB源代碼非常龐大,因此任何給定的工具都必須解決這些問題,以保持速度。