Skip to main content

Branch Workflow

Overview

This document outlines the standardized branch workflow to be followed during development and deployment.


Branch Structure

1. Feature Branch

  • Created from the staging branch.
  • Used for developing new features.
  • Naming should follow the agreed feature naming convention.

2. promotion/staging

  • Developers push their local code to this branch.
  • Automated checks are performed:
    • Linting
    • Ruff validations
  • Acts as a validation layer before merging into staging.

3. staging

  • Developers raise a Pull Request (PR) from promotion/staging.
  • Code is reviewed and approved before merging.
  • Serves as the integration branch for tested features.

4. release

  • Created by the DevOps team from the production branch.
  • Follows a predefined naming convention.
  • A PR is raised from staging to the release branch.
  • Used for final validation and release preparation.

5. production

  • Final deployment branch.
  • DevOps team raises a PR from the release branch.
  • Only fully tested and approved code is merged here.
  • Triggers production deployment.

Workflow Summary

  1. Create a feature branch from staging.
  2. Push development code to promotion/staging.
  3. Raise PR to staging after validations pass.
  4. DevOps creates a release branch from production.
  5. Merge staging into release via PR.
  6. Merge release into production for deployment.

Notes

  • All merges must go through Pull Requests.
  • Code reviews are mandatory before merging.
  • Follow naming conventions strictly for all branches.