Branching, Commits, and Daily Git Workflow
Document: INF-106Type: Guide / SOPStatus: ApprovedOwner: Engineering OperationsVersion: 4.2.0Updated: 2026-07-17
Branch Modelโ
| Branch | Purpose |
|---|---|
main | Production-ready, protected branch |
feature/<name> | New feature or content |
fix/<name> | Non-emergency defect correction |
hotfix/<name> | Urgent production correction |
docs/<name> | Documentation-only update |
release/<version> | Optional coordinated release stabilization |
Daily Workflowโ
git checkout main git pull --ff-only git checkout -b feature/login-redesign
make and test changes
git add . git commit -m "feat: redesign login experience" git push -u origin feature/login-redesign
Commit Standardโ
Use concise conventional prefixes:
feat: add team member pagination fix: prevent duplicate Firestore records docs: document Gmail alias filters refactor: simplify authentication service test: add project form validation tests chore: update dependencies
- Keep each commit focused on one logical change.
- Write in the imperative mood.
- Do not include secrets, client data, or unrelated generated files.
- Reference an issue when one exists.
Cloudberrie Merge Defaultโ
Use squash merge for ordinary feature branches to keep main readable. Use merge commits only when preserving the complete branch history is intentionally valuable.