Skip to content

Latest commit

 

History

History
60 lines (45 loc) · 1.86 KB

CONTRIBUTING.md

File metadata and controls

60 lines (45 loc) · 1.86 KB

Contributing

Environments

Production

https://essex.gov.uk

Only the main branch can be deployed.

Preprod

Currently used for multiple, conflicting purposes:

  • Creating new content, prior to transferring it to Production
  • Investigating new features, not yet in develop branch
  • UAT - testing by the client before deploying

To support this, any branch can be deployed.

New features may include new modules that are not in develop branch. These must be uninstalled manually before another branch is deployed to Preprod.

Dev

Used for:

  • QA by Nomensa's testers
  • CI/CD - merges to develop will trigger a deployment to Dev environment using the Gitlab pipeline.

Branches

main

This is the stable branch, containing the code that has been deployed to Production. Its main purposes are to make it easier to:

  • check what is on Production
  • create hotfix branches

develop

This is the branch for testing features and bugfixes before being merged to main and deployed to Production.

Pull requests should only be merged to develop if they are ready to be tested and deployed. If it is uncertain whether a new feature is required then it should stay in a feature branch.

Release branches

We will try to avoid release branches by frequent testing of develop, merging to main and deployment to Production.

Feature and bugfix branches

New features and bugfixes should be branched off develop and pull requests created back to develop.

Hotfix branches

Only hotfixes (e.g. for security updates) should be branched off main so they can be deployed to Production ahead of features that are still being tested.

Commits

Commit messages should be prefixed with a Jira ticket number so that the purpose of the change can be traced.

Multiple commits in a pull request should be squashed unless the individual commit messages are informative.