-
Notifications
You must be signed in to change notification settings - Fork 13
Development Workflow Documentation
This document outlines the development workflow and deployment system used for our project, which integrates GitHub for version control and automated processes. The main branches involved in this workflow are develop for ongoing development and main for stable releases.

- The
developbranch serves as the primary branch for all development activities. - All feature branches are created from and merged back into
developafter code review and testing.
- The
mainbranch contains the production-ready code. - Code is merged from
developtomainduring scheduled releases or after significant features or fixes.
A new automated deployment system has been implemented to streamline the process of deploying changes, managing versioning, and generating changelogs.
-
Version Management: Automatic versioning is handled through the deployment system, which updates the version numbers based on the type of changes made (major, minor, or patch).
-
Changelog Generation: Changelogs are automatically generated from commit messages and are formatted into a markdown file. This file is updated every time changes are merged from
developtomain.
-
Commit Changes: Developers commit changes to their feature branches with clear, structured commit messages that follow a predefined format to facilitate automated changelog generation.
-
Open Pull Requests: Once a feature or fix is completed, a pull request is opened from the feature branch to
develop. The PR must pass all automated tests and require at least one peer review. -
Merge to Develop: After approval, changes are merged into
develop, where any additional integration tests are run. -
Release Preparation: When ready for a release, a pull request from
developtomainis created. This includes final testing and any last-minute documentation updates. -
Changelog and Versioning: Upon merging to
main, the automated system updates the changelog and increments the version number based on the changes. The changelog and the incremented version are then committed back to themainbranch. -
Deployment: Finally, the changes in the
mainbranch are deployed to production.
[+] Add search functionality to the user interface
- Implements a new search bar in the UI
- Allows users to search their data by keywords
- Updates unit tests to cover new search functionality
For those looking to interact with or test the front end, the latest stable version is always deployed from the main branch. Continuous integration tools ensure that only tested and approved changes are deployed to production.