如何在发布版本中自动部署网站?

时间:2008-10-15 01:19:15

标签: visual-studio-2008 deployment msbuild build-process ftp

我想在visual studio 2008中进行发布版本时上传(通过ftp)网站。我不希望上传任何源代码文件,配置哪些文件夹应该上传会更好。我正在使用ASP.NET Web应用程序或MVC。如何配置VS.NET以自动上载(和覆盖)上次部署的网站?

6 个答案:

答案 0 :(得分:3)

您可以使用Microsoft的Visual Studio Web Deployment Project Add In。

我将它与MSBuild一起用作CruiseControl的一部分,它非常好用,并且有一些Community Tasks for MS Build你可以在构建过程中执行* .config(或任何XML文件)替换。

编辑:我还看到MSBuild社区任务包含一个FtpUpload操作。这应该是你所需要的。

答案 1 :(得分:1)

嗯,事实证明,最简单的方法是使用VS.NET内置的“发布”功能。
右键单击该项目,然后单击“发布”。它将为您构建和部署项目。它显然不像使用MSBuild或Nant那样可自定义,但它确实有一些选项: Publish Screen

之前我使用过这个功能,但我不知何故认为它只适用于“网站”项目。

答案 2 :(得分:0)

或者你可以使用nant

答案 3 :(得分:0)

没有ftp任务。 Here我发现,最方便,最轻盈,最优秀的解决方案。奇怪的是为什么没有它的端口。

答案 4 :(得分:0)

这个问题有点旧,但我建议您使用MSDeploy。如果需要,还可以使用WDP进行ASP.NET编译并为您合并。 MSDeploy的优点是您可以在目标计算机上安装MSDeploy Remote Agent Service。然后,当您执行同步时,它将确定哪些文件已过期并仅发送这些文件。因此节省您的时间和带宽。您也可以在部署站点时执行转换。它也很容易部署到许多不同的服务器上。我在线有关于MSDeploy的视频,有关http://sedodream.com/2009/10/27/MSDeployPresentationMaterials.aspx的详细信息。

答案 5 :(得分:0)

免责声明:我写了这个

我使用的是我写的东西,很快:http://www.mirios.com.au/dashy

但不要轻易使用它,因为你需要:

  1. 源代码管理(目前仅限于SVN)
  2. CI服务器(Cruise Control或Hudson等)
  3. 能够将软件安装到您要部署到的服务器上
  4. 耐心地设置一切
  5. 有点信任,因为它仍处于开发阶段:)
  6. 随意给它一个破解,但是,目前,我不推荐任何关键的东西。