Git Branching Strategy
This page defines the Git workflow for the DeltaFM Facilities Maintenance application.
Goals
- Keep
mainproduction-ready. - Make active work visible and isolated.
- Keep releases predictable.
- Reduce merge conflicts and unclear ownership.
Branch types
main
- Always reflects production-ready code.
- Protected from direct pushes.
- Updated only through reviewed pull requests.
dev
- Integration branch for the next release.
- Feature branches are created from
dev. - Completed work is merged back into
dev. - Automatic deployment to test environment (possibly rename environment to dev)
feature/{Jira ticket}-*
Use feature branches for normal development work.
Examples:
feature/DFM-8-add-work-order-export
feature/DFM-12-improve-asset-search
Rules:
- Branch from
dev - Keep scope focused on one change
- Open a pull request back into
dev
hotfix/* (Not needed for the moment as we are pre release)
Use hotfix branches for urgent production issues.
Examples:
hotfix/fix-login-timeout
hotfix/repair-null-asset-crash
Rules:
- Branch from
main - Merge back into
main - Also merge into
devso the fix is not lost in the next release
release/*
Use release branches when preparing a production deployment.
Examples:
release/1.4.0
release/2026.04
Rules:
- Branch from
dev - Allow only stabilisation work such as versioning, testing fixes, and release notes
- Merge into
mainwhen approved for production - Merge back into
devafter release
Standard workflow
- Create a branch from
dev. - Commit work in small, readable units, and include the Jira ticket in every commit message.
- Push the branch and open a pull request into
dev. - Complete review and checks.
- Merge after approval.
Commit message requirements
- Every commit must include a Jira ticket reference.
- Use the same Jira ticket that appears in the branch name when applicable.
Example:
DFM-12 improve asset search performance
Hotfix workflow
- Create a
hotfix/*branch frommain. - Implement and validate the fix.
- Open a pull request into
main. - After release, merge the same fix into
dev.
Pull request expectations
- Use a clear title that describes the outcome.
- Link the relevant work item or ticket.
- Include testing notes.
- Require at least one reviewer.
- Do not merge if checks are failing.
Naming conventions
Use lowercase kebab-case branch names:
feature/add-preventive-maintenance-report
hotfix/fix-tenant-filter
release/1.5.0
Protection rules
Recommended repository rules:
- Protect
main - Protect
dev - Require pull requests before merging
- Require status checks to pass
- Block force pushes
- Block branch deletion for protected branches