我如何回滚其他上下文的变更集?
How can I rollback changesets of other context?
我有两个 liquibase 上下文 - master 和 test。
在测试上下文中,有向数据库插入测试数据。
如果我 运行 测试,所有变更集都在使用。
如果我 运行 应用程序,只有主变更集正在使用。
但是如果我在测试后 运行 应用程序,我可以看到数据库中的所有数据(主数据和测试数据)。
当我 运行 app.
时,我想自动回滚测试变更集
我该怎么做?
您可以使用 liquibase Rollback 命令在 运行 应用程序之前撤消测试上下文的更改集。
可以使用命令行实用程序、Ant 或 Maven 执行回滚或任何其他 Liquibase 命令。
查看使用 Rollback Maven Goal 的示例:
mvn liquibase:rollback
-Dliquibase.properties=./project.properties
-Dliquibase.rollbackDate=2016-01-01
-Dliquibase.contexts=test
在本例中,我使用了回滚日期模式。它将回滚 2016 年 1 月 1 日之后执行的属于名为 test 的上下文的所有变更集。
我有两个 liquibase 上下文 - master 和 test。 在测试上下文中,有向数据库插入测试数据。 如果我 运行 测试,所有变更集都在使用。 如果我 运行 应用程序,只有主变更集正在使用。
但是如果我在测试后 运行 应用程序,我可以看到数据库中的所有数据(主数据和测试数据)。 当我 运行 app.
时,我想自动回滚测试变更集我该怎么做?
您可以使用 liquibase Rollback 命令在 运行 应用程序之前撤消测试上下文的更改集。
可以使用命令行实用程序、Ant 或 Maven 执行回滚或任何其他 Liquibase 命令。
查看使用 Rollback Maven Goal 的示例:
mvn liquibase:rollback
-Dliquibase.properties=./project.properties
-Dliquibase.rollbackDate=2016-01-01
-Dliquibase.contexts=test
在本例中,我使用了回滚日期模式。它将回滚 2016 年 1 月 1 日之后执行的属于名为 test 的上下文的所有变更集。