사용 방법
- 설치 명령을 복사하고 자신의 에이전트 환경에 설치하기 전에 소스 패키지를 확인하세요.
- 필요한 도구, 인증 정보, 지원 환경은 원본 문서에서 확인하세요.
- 입력과 원하는 산출물을 설명하고 출처와 결과를 대조하세요.
npx skills add https://github.com/dev-toolings/superpowers-symfony --skill doctrine-migrations시작 전 확인
- 설치에는 모델 구독, API 한도, 파일 접근 권한이 포함되지 않습니다.
- 별점 수와 설치 수는 활동 지표이며 독립적인 품질·보안 검증이 아닙니다.
원본 저장소의 제목, 예시, 코드, 표, 링크, 이미지를 유지해 표시합니다.
Doctrine Migrations (Symfony)
Use when
- A mapping change needs a schema migration (new column, index or table).
- Reviewing a generated
make:migrationordoctrine:migrations:difffile before it is applied. - Rolling back a version, or deploying pending migrations to production.
- Tuning
doctrine_migrations.yaml(transactional,all_or_nothing,enable_service_migrations).
Default workflow
- Change the entity mapping, then generate the migration with
make:migrationordoctrine:migrations:diff. - Read every
addSql()line: a rename can appear as drop plus add, and index churn is common. - Write a real
down()that reversesup(), and keep one concern per migration. - Check
doctrine:migrations:status, preview withdoctrine:migrations:migrate --dry-run, then rundoctrine:migrations:migrate. - Roll back with
doctrine:migrations:migrate prevordoctrine:migrations:executewith--down. - With several entity managers, pass
--emto every migrations command.
Guardrails
- Never edit an already-applied migration: add a new one.
- Keep diff-generated migrations schema only; put data changes in a dedicated, idempotent migration or command.
- Keep the typed signatures
up(Schema $schema): voidanddown(Schema $schema): void. all_or_nothingis mostly effective on PostgreSQL, since most MySQL DDL commits implicitly.
Progressive disclosure
- Use this file for execution posture and risk controls.
- Open references when deep implementation details are needed.
Output contract
- Migration files with a reviewed
up()and a workingdown(). - Output of
doctrine:migrations:statusand the dry-run, plus the rollback command. - Any
doctrine_migrations.yamlchange and why.
References
reference.md




