如何通过掩码将文件包含在 changeLog 中

How include files in changeLog by mask

我们有相当标准的变化-log.xml:

<databaseChangeLog …>
  <include file="changes/change1.xml"/>
  <include file="changes/change2.xml"/>
    …
  <include file="changes/changeN.xml"/>
</databaseChangeLog>

问题是 N 一直在攀升,已经接近 200,考虑到我们只使用了几个月的 liquibase,我担心文件很快就会变得太大而无法舒适地使用。我也不喜欢几个开发人员可以同时更改这个文件,是的 Git 会处理冲突,但我仍然不喜欢它。另一个问题是开发人员每次编写新的更改文件时都必须记住更新文件。

有没有办法通过掩码包含文件?类似于

<databaseChangeLog …>
  <include file="changes/*.xml"/>
</databaseChangeLog>

在includeAll标签中指定路径即可,我们这样使用:

<includeAll path="config/liquibase/changelog/" relativeToChangelogFile="false"/>

你的情况可能是

<includeAll path="changes/"/>