更新到 liquibase 中的特定标签

Bos*_*ohn 4 database version-control liquibase

我知道我可以通过更改集在更改日志中包含版本标签

<changeSet id="1234" author="John">
    <tagDatabase tag="version_1"/>
</changeSet>
Run Code Online (Sandbox Code Playgroud)

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

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

Nat*_*and 6

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

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

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