Iis Windows上的网站的良好部署工具是什么?

Iis Windows上的网站的良好部署工具是什么?,iis,deployment,Iis,Deployment,我正在寻找的东西,可以复制(最好只改变)文件从一个开发机器到一个登台机器,最后到一组生产机器 “假设”模式和“回滚”上一次部署的功能都很好。数据库迁移不是必需的功能 更新:免费/低成本的工具固然不错,但成本并不是唯一的问题。一个能够实际管理从一个环境到下一个环境的部署的工具(dev->staging->production,而不是从开发机器到每个环境)也是理想的 另一个很好的功能是只复制更改过的文件-我们的一些旧站点包含数百个.asp文件。我们使用了(我知道这是一个不幸的名称),它可以很好地自定

我正在寻找的东西,可以复制(最好只改变)文件从一个开发机器到一个登台机器,最后到一组生产机器

“假设”模式和“回滚”上一次部署的功能都很好。数据库迁移不是必需的功能

更新:免费/低成本的工具固然不错,但成本并不是唯一的问题。一个能够实际管理从一个环境到下一个环境的部署的工具(dev->staging->production,而不是从开发机器到每个环境)也是理想的


另一个很好的功能是只复制更改过的文件-我们的一些旧站点包含数百个.asp文件。

我们使用了(我知道这是一个不幸的名称),它可以很好地自定义,并允许您保存配置文件以部署到不同的服务器。它还有一个“备份”功能,可以在部署之前备份生产文件,因此回滚应该非常容易。

您不需要指定是否使用Visual Studio.NET,但Visual Studio 2005和2008中有一些内置工具:

复制网站工具——基本上是一个视觉同步工具,它突出显示文件并允许您从一个复制到另一个。手动,内置于Visual Studio中

aspnet_compiler.exe--允许您预编译网站

当然,您也可以创建web部署包并作为MSI进行部署

我使用了Cruise Control.NET、nant和MSBuild的组合来编译和交换特定环境的配置文件,并将这些文件复制到生成输出目录。然后,我们有另一个nant脚本来执行文件复制(并在必要时运行数据库脚本)


对于回滚,我们将保存所有以前的部署,因此理论上,回滚只涉及重新部署上一个工作版本(并恢复数据库)。

@Sean Carpenter您能告诉我们更多关于您的环境的信息吗?解决方案应该是免费的吗?简单

我发现机器人技术在这类事情上相当圆滑。打包成一个批处理文件,就可以开始了。这是一个荣耀的xcopy,但部署我的网站并不难。把文件复印出来就行了

至于回滚。。。您正在使用源代码管理,对吗?把旧的来源从那里拿出来。或者,在批处理文件中,也将部署复制到另一个名为website yyy.mm.dd的文件夹中,以便在紧急情况下准备好一个可爱的文件夹

有关如何获取日期部分的详细信息,请参阅for命令

robocopy.exe
for /?

是的,这是一个完全的“黑客”,但它可以很好地移动文件。

在某些情况下,我使用了一个名为SyncBack()的免费软件

它提供复杂的多步骤文件同步(文件系统或FTP等,压缩等)。该程序具有良好的图形用户界面。您可以定义配置文件并将它们分组/一起执行

您可以对文件类型、名称等设置筛选器,并在作业执行后执行命令/程序。还有一个作为html报告提供的作业日志,如果您安排作业,可以将其作为电子邮件发送给您

该软件也有一个专业版本,但对于普通任务,免费软件应该很好


我已经放弃了寻找一款好的免费产品。 然后我找到了微软的同步玩具2.0,虽然没有选择,但效果很好

但我需要部署到远程服务器

由于我连接了终端服务,我意识到我可以在连接时选择本地硬盘,然后在远程服务器上的资源管理器中打开远程服务器上的
\\t客户端\S\MyWebsite


然后,我将synctoy与该路径一起使用,并将其与我的服务器同步。到目前为止,似乎工作得非常好,速度也很快……

也许rsync加上一些自定义脚本就可以了

试试repliweb。它处理文件的以前版本的完全回滚。我在为要求使用它的客户工作时使用过它,我;我成了它的忠实粉丝,尤其是:

  • 回滚到以前版本的代码
  • 不同用户角色的身份验证和规则
  • 部署到多个环境
  • 通过电子邮件/日志向用户完整报告,记录更改内容、当前版本等

很抱歉被否决,因为它在Windows Server 2008上对我来说崩溃了。如果您遇到其他问题,请添加评论。看起来像是一个很棒的小工具-我刚刚进入下一个选项…非常酷。2分钟内启动并运行。有一点让人困惑的是,对于FTP传输,您必须单击“高级”,配置设置,然后单击“目的地”旁边的目录图标以连接,但不确定在Windows上运行rsync需要什么。