Skip to main content

Pull and restart

Upgrading MergeWatch is a single command:
This pulls the latest image (ghcr.io/mergewatch/mergewatch:latest) and restarts the container. The Postgres sidecar is unaffected.

Database migrations

Database migrations run automatically on container startup. When a new version includes schema changes, they are applied as soon as the container starts. No manual migration steps are needed.
Your existing review history and configuration data are preserved during upgrades. Migrations only add or modify schema — they never delete data.

Zero-downtime upgrades

Docker Compose restarts containers sequentially. During an upgrade:
  • The old container processes any in-flight review before shutting down
  • The new container starts and begins accepting webhooks
  • GitHub retries any webhook deliveries that fail during the brief restart window
For true zero-downtime upgrades in production, consider running MergeWatch behind a load balancer with multiple replicas, or use a platform with rolling deployments (e.g., Kubernetes, ECS, Cloud Run).

Rollback

To roll back, pin the image tag to a known-good build. Published tags today are latest plus the commit SHA of each build on main (for example e24f5fa). Semantic-version tags such as 0.1.0 are produced only when a v* git tag is pushed, so pin to a SHA unless a release tag exists:
Browse the available tags at ghcr.io/mergewatch/mergewatch.
Rolling back to a version with an older database schema may cause issues if newer migrations have already run. Test rollbacks in a staging environment first.

Platform-specific upgrades

If you deployed MergeWatch to a specific platform, see the corresponding guide for platform-native upgrade instructions:

Platform Guides

Google Cloud Run, AWS ECS, Azure, Fly.io, Railway, and more.

Changelog

See what changed in each release.