ASP.NET没有针对新站点的真正的xcopy部署方式。它依赖于在IIS中拥有虚拟目录/应用程序。然而,一旦创建了该虚拟目录,您可以使用xcopy进行更新。
使用MSBuild上的_CopyWebApplication目标将会精准地实现你的需求。但是需要注意的是,只有主要程序集会被复制到bin文件夹中,因此需要一个复制任务来复制bin文件夹中的任何其他文件。
我试图将示例脚本作为帖子的一部分发布,但无法实现。
请查看我博客上的文章,其中介绍了如何创建类似于您所需的MSBuild脚本。
这取决于您需要多复杂的解决方案,您可以只使用脚本和Jenkins。例如,您可以使用MSBuild与Jenkins仅发布到IIS。如果您有Jenkins,其他工具连接到它也很容易。但是,如果您只想构建,请使用一个脚本,jenins执行每个构建使用MSDeploy,并且它将运行得很好。
这是我做的方式,只是为了让您有所感触:
Sonarqube使用Gallio、Gendarme、FXcop、Stylecop、NDepths和PartCover来获取您的度量标准,所有这些都非常直接,因为SonarQube会自动完成这些而无需进行太多配置。
这里是Jenkins,用于构建并获取Sonar指标以及另一个自动部署到IIS的作业。我使用一行简单的脚本调用我的MSBuild和URL、密码和用户。
并且Sonarqube为我的项目提供了所有的度量标准。这是一个简单的MVC4应用程序,但它运行得非常好!
如果您需要更多信息,我可以为您提供一份好的指南。
整个设置使用MSBuild来构建和部署应用程序。
构建 --> 发布
将会出现一个对话框,引导您完成整个过程。
针对您在更新中提到的自动化构建,我建议您了解一下MSBuild和CruiseControl.NET