FluentMigrator vs Sqitch
FluentMigrator
fluentmigrator.github.ioSqitch
sqitch.orgSide by side
| Figure | FluentMigrator | Sqitch |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Database Migration Tools | 8.2 (#10) | 7.9 (#13) |
| Database support | The documentation lists providers including SQL Server, PostgreSQL, MySQL, SQLite, Oracle, Firebird, IBM DB2, SAP HANA, Snowflake, and Redshift. | Sqitch supports PostgreSQL, YugabyteDB, CockroachDB, SQLite, MySQL, MariaDB, Oracle, Firebird, Vertica, Exasol, Snowflake, and ClickHouse. |
| License | The project is released under the Apache-2.0 License. | The manual grants permission to use, modify, publish, distribute, sublicense, and sell the software subject to its stated condition, and provides it without warranty. |
| Purpose | FluentMigrator is a .NET framework for managing database schema changes through version-controlled C# migrations. | Sqitch is a database change management application for framework-free development and dependable deployment. |
Plans
In their own words
FluentMigrator
FluentMigrator is a free .NET framework for managing database schema changes with version-controlled C# migrations. Its fluent C# API defines Up and Down methods for applying changes and rolling them back. The project lists providers for SQL Server, PostgreSQL, MySQL, SQLite, and Oracle, among others; provider packages are selected separately. Migrations can run inside an application, with the Migrate.exe console tool, or through dotnet-fm, which integrates with the cross-platform .NET CLI. By default, FluentMigrator creates a VersionInfo table to record completed migrations. Command-line runners can preview generated SQL without executing it, and the CLI can validate migrations before execution. The project documents .NET dependency injection integration and CI/CD examples for GitHub Actions, Azure DevOps, and Jenkins. The Quick Start calls for .NET 8.0 or later, a supported database, and basic C# and database knowledge. FluentMigrator is released under the Apache-2.0 License, with releases distributed through NuGet.
Sqitch
Sqitch is a database change management application for deploying and tracking database changes. It is a standalone system, not tied to a framework, ORM, database engine, or development environment. Changes are written as scripts native to the chosen database, and can declare dependencies—including changes in other Sqitch projects—to establish execution order. A plan file and Merkle tree pattern support deployment integrity without requiring numbered change names. Sqitch can deploy and revert changes, report status and history, and run optional verification scripts. Its manual lists PostgreSQL, YugabyteDB, CockroachDB, SQLite, MySQL, MariaDB, Oracle, Firebird, Vertica, Exasol, Snowflake, and ClickHouse. Connecting and executing scripts requires the database's native command-line client and connector libraries. Installation options include source, Docker, Linux distribution packages, macOS Homebrew, and Windows instructions. Sqitch is free, with a license permitting use and distribution, and is available for Linux, macOS, Windows, and self-hosted use.