我有一个代码库但有多个客户端。有没有办法可以使用构建定义来构建单独的IIS文件夹,还可以更改每个客户端的配置,而不是在源代码中更改它并逐个构建它们。
我甚至很高兴为每个客户提供一个构建定义,只需从TFS中的代码中更改它所需的内容。
谢谢!
答案 0 :(得分:3)
您可以在Visual Studio中创建与当前“调试”配置相似的配置,该配置将与您的解决方案相关联。然后,您可以让任何Web应用程序为每个配置创建Web.Config转换:
Web.Config
--Debug.Web.Config
--Customer1.Web.Config
--Customer2.Web.Config
--Customer3.Web.Config
--Customer4.Web.Config
然后,您可以编辑构建定义,而不是仅仅在构建期间构建解决方案的默认配置,您可以告诉它构建所有5个配置。
图:向TF Build Definition添加多个配置
如果项目(即“Customer1”)不在下拉列表中,则无关紧要,只要它与Visual Studio匹配即可。
这将导致:
\\DropFolder\[BuildDefenition]\[BuildDefenition]_[BuildNumber]\[configuration]\*
因此,如果您希望获得客户1的实例,请从以下位置获取:
...[BuildDefenition]_[BuildNumber]\Customer1\_PublishSites\*
您可以在MSDN上找到如何创建配置:http://msdn.microsoft.com/en-us/library/kwybya3w.aspx