Control order of changelog execution

I know this is controlled alphabetically so initially I wrote change logs like so:


It executes them as intended, 1 through 8 sequentially.

Eventually I added 3 more, so now I have 1 through 11, which executes like:


I’m planning to switch to a-changelog.sql, b-changelog.sql to avoid this, since the number are sorted differently than I’d hoped, but figured to ask since VSCode and Intellij orders the changelogs sequentially so I was a bit caught by surprise…

Is there any way I can control this so that I could stick with numbered ordering and have it execute sequentially 1 through 11?

Liquibase Version: 4.18.0

I assume you are using “includeAll” to include the files (since you are referring to sequentially). The solution is to use “include” instead:

  <include file="db-changelog-1.xml"  relativeToChangelogFile="true"/>
  <include file="db-changelog-2.sql"  relativeToChangelogFile="true"/>
  <include file="db-changelog-3.xml"  relativeToChangelogFile="true"/>
  <include file="db-changelog-4.json" relativeToChangelogFile="true"/>
  <include file="db-changelog-5.yml"  relativeToChangelogFile="true"/>

Now you can put the files in the exact sequence that you need.