2

我有Web Deploy设置,其中包含在MVC项目发布时执行的代码第一次迁移。如果我搞砸了,有没有办法回滚发布?我可以编写单元和集成测试,直到我脸色发青,但不可避免地会出现一些错误或错误。回滚更改要比在活动站点关闭时尝试修复错误好得多。我也有一个ruby rails项目,我通常使用Capistrano进行部署。它有一个方便的“cap deploy:rollback”命令,我经常使用它。我需要类似于我的MVC项目。回滚ASP.NET MVC中的Webdeploy发布

+0

我实际上在寻找相同的功能。我可以从源代码控制创建一个标签,但这只是部署例程中的另一个步骤。从VS直接发布的重点是减少步骤:) – QFDev

回答

2

你想要做的是在你的源代码管理中创建特定的分支和标签,然后部署这些标签。如果您想部署以前的版本,只需签出该分支/标签并进行部署即可。

您还可以使用此脚本专门运行迁移。

Update-Database -TargetMigration:0 

只需修改您的部署脚本以专门调用该分支上最新版本的迁移即可。

采取这几个步骤将允许您只部署所需的分支/标签,并且您的生产环境将始终保持同步。

注意:唯一需要注意的是您的迁移是否具有破坏性。