Doctrine Database Migrations Library
4.8k
Stars
393
Forks
136
Open issues
30
Contributors
AI Analysis
Doctrine Migrations is a PHP library that provides database migration management tools, enabling developers to version-control and apply incremental database schema changes. It serves PHP applications that require reliable, reversible database evolution, particularly those using the Doctrine ORM ecosystem. It is specialized for database schema versioning in PHP projects and is not a general-purpose tool.
Inferred from signals mentioned in the README (tests, CI, type safety) — not a review of the actual code.
AI's overall editorial judgment — not an average of the bars above, can weigh other factors too.
Doctrine Migrations: Established PHP schema versioning for Doctrine ORM users
Doctrine Migrations is a schema versioning and migration tool for PHP applications using the Doctrine ecosystem. Built to solve the problem of managing database schema changes across environments and team members, it's tightly integrated with Doctrine ORM and DBAL. Primary users are PHP developers building applications with Doctrine; adoption appears concentrated within that ecosystem rather than as a standalone migration solution.
Created in 2010 as part of the Doctrine project ecosystem. Evolved alongside Doctrine ORM as the native migration strategy for Doctrine-based applications, establishing itself as the de facto standard for schema versioning within that community over the past 15+ years.
Growth appears stabilized rather than accelerating. The project gained traction through tight integration with Doctrine ORM and DBAL (both more heavily starred), making it a natural choice for Doctrine users. Star velocity (0 stars in last 7 days as of 2026-06-19) and modest forking rate suggest the project serves a mature, satisfied user base rather than attracting new adopters rapidly.
Adoption not verified from README alone. Packagist download badge present (indicating package manager integration), but specific volume data not visible in truncated excerpt. Real-world adoption likely concentrated within Doctrine ecosystem projects, but scale cannot be determined from available metadata.
Based on README, appears to be a command-line tool with versioning logic, likely supporting multiple migration strategies. README mentions 'documentation' but does not detail architectural patterns, dependency structure, or design philosophy. Likely integrates tightly with Doctrine DBAL for database operations.
README displays a codecov badge linking to the 3.1.x branch, indicating continuous integration and code coverage tracking are in place. Specific coverage percentage not disclosed in truncated README.
Last push 2026-06-19 (14 days prior to analysis date 2026-07-03) indicates active maintenance. Build status badge present and CI workflows shown as active. No evidence of abandonment; maintenance appears steady but not accelerating.
ADOPT IF: Your project is already built on Doctrine ORM/DBAL and you need schema versioning; Doctrine Migrations is the natural, well-integrated choice with years of community validation. AVOID IF: You need language-agnostic or multi-ORM migration tooling, or you are building a non-Doctrine PHP application where standalone tools like Phinx offer better independence. MONITOR IF: You are evaluating Doctrine for a new project; Doctrine Migrations' steady maintenance is reassuring, but verify it meets your specific database change workflow requirements by consulting current documentation.
Independent dimensions
Mainstream potential
3/10
Technical importance
6/10
Adoption evidence
5/10
- Ecosystem lock-in: Tight coupling to Doctrine ORM/DBAL means migration tooling choices are bundled with ORM selection. Switching away from Doctrine would require re-implementing or migrating historical migrations.
- Limited mainstream visibility: Outside Doctrine community, adoption appears low. May face skepticism from teams unfamiliar with Doctrine ecosystem, reducing cross-team portability.
- Slow star growth and low recent star velocity suggest project is no longer attracting new adopters, potentially indicating market saturation within the Doctrine user base rather than expansion.
- Documentation in README is minimal (link-only); actual feature set and advanced capabilities cannot be assessed from available metadata.
- Competitive pressure from language-agnostic tools: Teams increasingly favor Flyway or Liquibase for multi-language support, potentially limiting Doctrine Migrations to legacy and Doctrine-committed projects.
Doctrine Migrations will likely remain the standard migration tool for Doctrine ORM projects, with maintenance continuing at current steady pace. Growth in stars and adoption will probably remain flat or slow as the Doctrine ecosystem itself matures. Project serves a permanent, satisfied niche rather than expanding into new territory.
Newsletter
Get analyses like this every Monday
Free weekly digest of the most interesting open-source discoveries.
Languages
Information
- Language
- PHP
- License
- MIT
- Last updated
- 3w ago
- Created
- 198mo ago
- Analyzed with
- anthropic/claude-haiku-4-5
Stars over time
Contributors over time
Top 100 contributors only — repos with more will plateau at 100.
Open issues
Sorting migrations breaks listing them
Using `executeStatement()` in `up()`/`down()` methods?
Execute a subset of migrations based on namespace or tags
[DBAL 4 + custom datetime type] make:migration keeps generating identical ALTER TIMESTAMP(3) statements
Sqlite platform migration diff regenerates the table continuously
Top contributors
Recent releases
Similar repos
doctrine/DoctrineMigrationsBundle
DoctrineMigrationsBundle integrates the Doctrine Migrations library into...
| Repository | Stars | Week Δ | Language | Score | Updated |
|---|---|---|---|---|---|
|
|
4.8k | +1 | PHP | 8/10 | 3w ago |
|
|
4.3k | — | PHP | 8/10 | 4w ago |
|
|
10.2k | — | PHP | 8/10 | 7h ago |
|
|
4k | — | PHP | 8/10 | 3w ago |
|
|
9.7k | — | PHP | 8/10 | 18h ago |
|
|
4.1k | — | PHP | 8/10 | 3mo ago |
Laravel's built-in migration system serves a similar function but is tightly coupled to Laravel. Doctrine Migrations is database-agnostic and designed for standalone Doctrine projects, making it suitable for non-Laravel applications. Laravel migrations have broader mainstream reach; Doctrine Migrations dominates within the Doctrine ecosystem.
Language-agnostic, multi-database migration tool with broader language support (Java, .NET, Node.js, etc.). Flyway targets enterprise multi-language environments; Doctrine Migrations targets PHP developers already committed to Doctrine. Flyway has larger mainstream adoption; Doctrine Migrations is more lightweight for PHP-only shops.
XML/YAML-based declarative schema versioning with broad tooling support. Doctrine Migrations uses imperative PHP code for migrations. Liquibase appeals to teams preferring declarative approaches and multi-language support; Doctrine Migrations appeals to developers comfortable scripting migrations in PHP.
Standalone PHP migration tool not tightly coupled to an ORM. Phinx offers independence from Doctrine; Doctrine Migrations provides tight integration with Doctrine ORM/DBAL, reducing friction for Doctrine projects. Phinx may be preferred for projects avoiding Doctrine.
SQLAlchemy-integrated migration tool for Python. Doctrine Migrations is the PHP equivalent—ecosystem-native, ORM-aware, serving a similar role in a different language/community.