列是:
当Liquibase执行databaseChangeLog时,它会按顺序读取changeSets,并且对于每一个,检查“databasechangelog”表以查看是否已经运行了id / author / filename的组合。
我在自动部署的环境中使用liquibase,因此我的变更集的文件路径不断变化。因此,相同的变更集反复执行,这是不受欢迎的行为。
有没有办法从组合中排除文件名,该组合是变更集的唯一标识符?我基本上希望liquibase只使用ID和Author。
谢谢
亲切的问候,
托拜厄斯
答案 0 :(得分:1)
我认为您需要做的就是编辑更改日志,以便设置logicalFilePath
属性。这是一个例子:
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.4.xsd"
logicalFilePath="changelog.xml">
...
</databaseChangeLog>
如有必要,还可以在各个变更集上设置logicalFilePath
属性。