How Releases Work
A Release is an immutable package containing all your SQL migration files:- Linked to VCS commit for full traceability
- Files validated and stored with SHA256 checksums
- Can be deployed to multiple environments
- Supports progressive rollout strategies
- Plan Generation - Defines target databases and rollout strategy
- Rollout Execution - Creates tasks for each database
- Revision Tracking - Records applied migrations to prevent duplicates
CI/CD Integration Examples
- GitHub Actions
- GitLab CI
- Azure DevOps
- Bitbucket Pipelines
Deployment Strategies
Progressive rollout across environments:Database Groups
Manage database fleets with groups
Idempotency Guarantee
Bytebase tracks which migration versions have been applied to each database via the revision system. When creating a release:- Check revisions - Query which versions already exist
- Skip applied - Migrations with matching versions are skipped
- Execute new - Only unapplied versions are executed
- Record success - Create revision only on successful completion
- ✅ Safe to run the same release multiple times
- ✅ Migrations never double-execute
- ✅ Environment parity (dev migrations auto-skip in prod)

