OuroDev Git Workflow
To facilitate the creation of a stable client and server, development of i24 towards a Volume 2 stable release will follow the following agreed upon development lifecycle.
Branch Organization
The main/origin development repo shall be CoX/Source
Feature Branches
All development for features or bugfixes shall be completed in Feature branches that are created from the Develop branch. Each dev will be responsible for creating and maintaining their Feature branch. To be promoted to the Develop branch, a Feature branch shall submit a Pull Request (PR) to CoX/Source.
Develop Branch
The Develop branch is the latest "unstable" or in-development codebase. All Feature Branches are merged into the Develop Branch using PRs.
Master Branch
The Master branch is the latest "stable" codebase. All releases originate from Master. When the Develop branch reaches a potential release state, it is merged into Master, and a Release Candidate (RC) Release branch is created from the Master Branch.
Release Branches
Each RC and final Release shall be branched from Master into a read-only Release branch. Most servers should utilize builds from a Release Branch, as Master will often represent Release Candidates with stable, but incomplete feature implementation.
PR submission rules
For a PR to be submitted to Develop, the following criteria must be verified:
- The PR branch must pull from Develop prior to submitting the PR.
- The PR branch must build.
- The PR branch must clearly provide a feature or bugfix and steps to resolve the bug or test the feature.
- The PR must be reviewed and approved by 2 approved reviewers.
- All NEW code must follow the [OuroDev Coding Standards] (to be determined)