我們有一個試驗和生產兩個代碼庫。這兩個代碼庫之間的唯一區別是在兩個文件中:使用持續集成修改.NET項目文件
- 配置文件
- 構建文件(.csproj的)
維護兩個分支是一個相當大的努力可能被淘汰將代碼庫合併爲一個並使用連續集成(例如Hudson)來根據目標環境修改文件。
由於VS2010的,沒有爲配置文件一個非常聰明的解決方案,使我們能夠定義不同的配置文件轉換爲兩個創建配置「釋放試驗」和「釋放-PROD」。
但是,我們有一定的差異,這反映在項目文件(.csproj)如:
- 所得組件的名稱:foo.exe的與美孚,將Test.exe。
- 的程序集的版本。
- ClickOnce部署設置。
有沒有什麼聰明的方式可以根據構建配置如何轉換csproj文件,或者如何將這些設置提取到配置文件或C#代碼中?
更新:
我在的csproj文件的MSBuild條件的屬性試圖通過@JaredPar的建議,但它有一個警告夫婦(見我的意見的詳細信息)。還有其他方法可以實現嗎?
不應該完全通過項目文件來控制這些更改嗎?我相信你可以根據選定的構建配置不同地應用設置。 – mellamokb 2012-03-27 14:30:14