4

我知道我可以通过变更集在我的变更日志中包含一个版本标签

<changeSet id="1234" author="John">
    <tagDatabase tag="version_1"/>
</changeSet>

这将允许我将数据库回滚到 version_1。

如果我有一个全新的数据库,是否可以运行更新并只针对一个标签?我知道我可以进行完整更新然后回滚,但这有点尴尬。

4

2 回答 2

4

更新: 现在有一个 updateToTag 命令。请参阅https://docs.liquibase.com/commands/community/updatetotag.html

原文: 目前没有更新到标签的方法。Liquibase 假定更改日志与您的代码匹配,因此您需要确保所有内容都已运行。通常,如果您只想运行变更日志的一部分,您将使用多个变更日志或具有不同变更日志版本的代码分支。

您可以使用 updateCount 运行一定数量的 changeSet,但您需要知道数量。您还可以使用将在某个点停止 changeSet 执行的标签(可能由上下文或预编码控制),但它与标签功能无关。

于 2013-10-16T15:48:15.223 回答
1

它们现在具有 liquibase 命令的新属性。做就是了:

liquibase updatetotag <tagname>
于 2021-06-24T10:02:02.587 回答