我可以撤消'标记为已部署' ReadyRoll中的选项?

时间:2016-11-29 00:53:15

标签: redgate sqlmigrations

我在部署时标记了2个脚本,并在我对TFS的更改中进行了检查。我可以在ReadyRoll项目中撤消这个吗?

1 个答案:

答案 0 :(得分:2)

当您单击标记为已部署时,ReadyRoll会在目标数据库中的[__MigrationLog]表中插入一行,以防止重新执行该脚本。

要撤消此操作,只需从目标数据库中删除记录,例如

DELETE FROM [dbo].[__MigrationLog] WHERE script_filename = '0001_20161125-1446_username.sql'

如果您要撤消许多服务器并标记为已部署':

  • 如果脚本是迁移,generate a new guid并替换<Migration ID="{guid}"/>元数据中的值(可在脚本标题中找到)。
  • 如果脚本是可编程对象,则只需对文件添加一个微不足道的更改(例如添加一些空格)。这足以触发对校验和的更改,从而导致重新部署脚本。