Branch → Commit → PR → Merge one at a time → Sync & verify
Always branch off a fresh main. Pull first so you start from the latest code.
git checkout main git pull origin main git checkout -b your-feature-name
Stage your changes, write a clear commit message, and push your feature branch to the remote.
git add . git commit -m "Describe your change" git push origin your-feature-name
The first developer to have a feature complete and ready to merge should open a Pull Request from their branch into main.
We merge Pull Requests into main one at a time. No stacking, no racing — sequential merges keep history clean and conflicts small.
main at natural stopping points. If your branch is ready for PR/merge, update from main first — before opening or merging the PR.
Pull the latest main, then merge it into your feature branch.
git checkout main git pull origin main git checkout your-feature-name git merge main
After merging main into your branch, resolve any conflicts, then verify everything works before pushing.
npm run verify:local
npm run dev
# (In new terminal)
npm run worker:dev
If the merge created new commits or you resolved conflicts, stage and commit those changes, then push.
git status
# If needed:
git add .
git commit -m "Merge main and resolve conflicts"
git push origin your-feature-name
We have had repeated issues where code gets merged to main via PR without anyone running the checks first — and then main is broken for the whole team. These commands are your safety net. Build the habit of running them often, not only when you're about to merge.
main into your feature branch
After resolving merge conflicts
At natural stopping points during development
Anytime you're unsure if something still works
npm run verify:local
npm run dev
# (In new terminal)
npm run worker:dev
If these checks fail on your branch, do not push. Fix it first. A broken main blocks the entire team.
main is always the source of truth. No direct commits to main. Every change goes through a PR. Before a PR is merged, the branch must be up to date with latest main, tested, reviewed, and approved.