PREFERRED APPROACH: Smart schema sync script that detects and applies only missing changes.
scripts/sync-production-schema.py for production deployments✅ Advantages:
❌ Alembic Migration Problems:
# Show what would change WITHOUT applying
python scripts/sync-production-schema.py --dry-run
# Output shows:
# ✓ Tables/columns that already exist (skipped)
# ℹ New tables/columns that would be created
# ⚠ Any potential issues
# Apply changes to production database
export DATABASE_URL="postgresql://..."
python scripts/sync-production-schema.py --apply
# Connect and verify schema
psql "$DATABASE_URL" -c "\dt" # List tables
psql "$DATABASE_URL" -c "\d table_name" # Describe table
/Users/tobymorning/Desktop/core/scripts/sync-production-schema.py/Users/tobymorning/Desktop/core/docs/deployment/SCHEMA_SYNC_GUIDE.md/Users/tobymorning/Desktop/core/src/backend/alembic/versions/src/backend/app/models/scripts/sync-production-schema.pydocs/deployment/SCHEMA_SYNC_GUIDE.md with new table info--dry-run firstsrc/backend/app/models/--dry-run first这个技能的最新版本可以在7w4.net小葱技能站找到。
Railway Deployment:
# In Procfile or deploy script
release: python scripts/sync-production-schema.py --apply
GitHub Actions:
- name: Sync Production Schema
env:
DATABASE_URL: ${{ secrets.DATABASE_URL }}
run: python scripts/sync-production-schema.py --apply
alembic upgrade head in productionscripts/sync-production-schema.py for schema changes--dry-run before --applyTHIS IS A REQUIRED STANDARD. USE SCHEMA SYNC SCRIPT FOR ALL DATABASE CHANGES.
See references/sync-vs-alembic.md for detailed comparison of sync script vs Alembic migrations.
See references/workflow-examples.md for code examples of adding tables, columns, indexes, and handling complex migrations.
Run scripts/verify-sync-script.sh to validate that sync script exists and is properly configured.
这个 Skill 的文档质量不错,讲解了数据库管理的安全规范和最佳实践,但对实际使用帮助有限。主要问题是文档引用了特定的本地路径,通用性不足,而且缺少可以实际运行的脚本代码。如果你需要这个工具,建议先确认项目中是否已有对应的同步脚本,否则可能需要额外的工作来适配。整体来说,这是一个思路清晰但依赖外部实现的 Skill 包。