在 Visual Studio 2008 中进行发布构建时,我想上传(通过 ftp)一个网站。我不希望上传任何源代码文件,最好配置应该上传哪些文件夹。我正在使用 ASP.NET Web 应用程序或 MVC。如何配置 VS.NET 以自动上传(和覆盖)最后部署的网站?
6 回答
您可以使用 Microsoft 的Visual Studio Web 部署项目加载项。
我将它与 MSBuild 一起用作 CruiseControl 的一部分,它非常好,并且通过MS Build 的一些社区任务,您可以将 *.config(或任何 XML 文件)替换作为构建过程的一部分。
编辑:我还看到 MSBuild 社区任务包含一个 FtpUpload 操作。这应该正是您所需要的。
好吧,事实证明,最简单的方法是使用 VS.NET 中内置的“发布”功能。
右键单击项目,然后单击发布。它将为您构建和部署项目。它显然不像使用 MSBuild 或 Nant 那样可定制,但它确实有一些选项:
我以前使用过此功能,但不知何故我认为它仅适用于“网站”项目。
或者你可以使用 nant
Nant 没有 ftp 任务。在这里,我找到了最方便、非常轻便、完美的解决方案。奇怪为什么没有它的端口到 nant。
这个问题有点老了,但我建议您为此使用MSDeploy。如果您愿意,您还可以使用WDP为您进行 ASP.NET 编译和合并。MSDeploy 的伟大之处在于您可以在目标机器上安装 MSDeploy 远程代理服务。然后,当您执行同步时,它将确定哪些文件已过期并仅发送这些文件。因此节省您的时间和带宽。您还可以在部署站点时执行转换。它也很容易部署到许多不同的服务器。我有一个关于 MSDeploy 的在线视频,更多信息请访问http://sedodream.com/2009/10/27/MSDeployPresentationMaterials.aspx。
免责声明:我写了这个
我用我写的东西,dashy: http: //www.mirios.com.au/dashy
但是不要轻易使用它,因为你需要有:
- 源代码控制(目前仅限于 SVN)
- CI 服务器(Cruise Control 或 Hudson 或其他)
- 能够将软件安装到您希望部署到的服务器上
- 耐心设置一切
- 有点信任,因为它仍在开发中:)
随意给它一个裂缝,但是,目前,我不推荐它用于任何关键的事情。