2

我将 2 个脚本标记为已部署并签入我对 TFS 的更改。我可以在 ReadyRoll 项目中撤消此操作吗?

4

1 回答 1

2

当您单击Mark as Deployed时,ReadyRoll 会在目标数据库的表中插入一行[__MigrationLog],以防止脚本被重新执行。

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

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

如果您有许多服务器要撤消“标记为已部署”:

  • 如果脚本是迁移,则生成一个新的 guid并替换<Migration ID="{guid}"/>元数据中的值(可以在脚本的标题中找到)。
  • 如果脚本是可编程对象,那么只需添加一个对文件进行微不足道的更改(例如添加一些空格)。这足以触发对校验和的更改,从而导致重新部署脚本。
于 2016-11-29T04:02:12.330 回答