dbx-merge-release
dbx-merge-release
Automated workflow for merging the main branch back into develop after a release has been cut. Uses the shell scripts in the repository root.
Context
After a release is published (via CircleCI), the main branch has release commits (version bumps, changelog, tag) that need to be merged back into develop.
Important constraint: Main and develop do NOT share linear history — main gets force-merged release commits. This means git rebase origin/main will never work (it tries to replay the entire repo). Always use the merge scripts.
How It Works
The scripts handle two cases automatically:
-
No new commits on develop: Simple merge. Conflicts (if any) are from CI-generated version bumps — resolve with
--theirs. -
New commits on develop after the release: The
start-merge-in-main.shscript detects commits on develop that have a UTC timestamp after the latest commit onorigin/main. It saves them to a temporary branch (temp/develop-new-commits), resets develop back, then does the merge. Afterend-merge-in-main.shcompletes, the agent rebases the saved commits on top of develop so they appear after the new-devtag and will be included in the next release.