✅ Short Answer
Liquibase supports the following changelog file formats:
- XML
- YAML
- JSON
- Formatted SQL
🔎 Details
| Format | Description | Common Use Case |
|---|---|---|
| XML | Most powerful and fully featured | Traditional projects, fine-grained control |
| YAML | More human-readable, concise | Modern teams, cleaner syntax |
| JSON | Good for machine-generated changelogs | Tools or scripted migrations |
| SQL | Uses special comments for Liquibase directives | Developers who prefer raw SQL |
📝 Example file names:
changelog.xmldb-changelog.yamlchangelog.jsonchangelog.sql(with--liquibase formatted sqlat the top)
📌 Key Takeaways
✅ Liquibase supports XML, YAML, JSON, and SQL as changelog formats.
✅ Choose based on team preference, tooling, and readability needs.
✅ All formats support the same core features like changesets, rollback, and tagging.