2014-03-29 84 views
1

我使用TFS2013來構建和發佈單個Web項目到生成機器上的本地文件夾。如指定here我只是添加下面的參數作爲msbuild參數,它的工作原理,包括Web.config轉換。TFS 2013將多個項目發佈到本地文件夾

/p:DeployOnBuild=true;DeployTarget=PipelinePreDeployCopyAllFilesToOneFolder;PackageTempRootDir="\\sharedfolder";AutoParameterizationWebConfigConnectionStrings=false 

現在我正在處理包含多個Web項目的解決方案。我想結束多個本地文件夾,每個Web項目一個。上面的解決方案似乎不起作用(只生成其中一個項目)。我還檢查了Drop文件夾中的_PublishedWebsites,但這些文件沒有應用轉換。

有沒有辦法做到這一點?

回答

2

您可以通過爲每個項目設置發佈配置文件來實現此目的。爲每個同名項目添加發布配置文件。您可以使用文件系統發佈方法將輸出發佈到每個項目的不同目錄。

只需在Ms-build參數中調用發佈配置文件即可。

/p:DeployOnBuild=true;PublishProfile=yourProfileName 

請點擊此鏈接瞭解更多詳情http://msdn.microsoft.com/en-us/library/dd465337(v=vs.110).aspx使用的文件系統,而不是Web部署。

+0

這是推薦的方法 –

+0

感謝您的回覆,它有很大的幫助。現在,在TFS中,我針對不同的環境(DEV,QA,PROD)有多個版本。爲每個項目添加三個不同的.pubxml是很多的基礎工作。我正在考慮爲每個項目添加一個「publish.pubxml」作爲佔位符。然後在構建模板中添加一些自定義邏輯,以便在每個構建中實際編輯原始xml,以便:更改構建配置(正確匹配DEV,QA或PROD)和嵌套在dropfolder某處的輸出文件夾。這太瘋狂了還是有更好的方法來做到這一點? – oscarmorasu

+0

您只需將.pubxml文件添加到您的Web項目中,而不是添加到所有其他類型的項目中。如果您有多個要部署的Web項目,並且您不想爲每個環境添加其他.pubxml,則自定義構建模板是唯一的選擇。每個環境的獨立pubxml的優點是,您還可以從Visual Studio部署代碼,並且很容易更改文件夾位置。 – suresh2

相關問題