Development
Branch and Deployment Strategy
Branch Roles
-
main
-
Purpose: Holds stable production-ready code and updated markdown content
-
Deploys to: Production site
-
Actions:
- Content updates (e.g.,
.md,.astro.md) - Production deploy script runs on commit
- Content updates (e.g.,
-
-
dev
-
Purpose: Active development (features, refactors, fixes)
-
Deploys to: Staging site
-
Actions:
- Non-content work only
- Does not require latest content from
main
-
Workflow Guidelines
-
Keep
mainanddevseparate- Do not merge
mainintodevunless content is explicitly needed for development
- Do not merge
-
Develop normally on
dev- Work on app features, backend logic, styles, etc.
- Content files from
mainare not needed here
-
Update production with new code
-
When feature work is complete:
Terminal window git checkout maingit merge dev -
This brings the new code into
main, alongside existing content -
Production deployment is triggered
-
Summary
main: content + stable code → productiondev: in-progress code → staging- Merge
devintomainto release code - Avoid polluting
devwith content unless needed for specific tests