-
Notifications
You must be signed in to change notification settings - Fork 33
[RFC] - 101: Workflow #108
Description
This issue will be updated with workflow guidelines, that will then be finalized and added to a md file.
Workflow (RFC proposal)
Gitflow
The workflow must follow the gitflow pattern:
- Use
feature/*for new features or delayable bug fixes - Use
hotfix/*for immediate bug fixes that must be propagated to stable, beta and develop channels - Use
developfor project changes, minor changes, etc.
Version numbers
-
The version should follow the
MAJOR.MINOR.PATCH-BRANCH.BUILDpattern. TheBRANCH.BUILDpart will be useful when releasing CI builds on beta/alpha channels.a. If we are working on the, say,
3.1.2codebase, every minor update that needs to be pushed to beta and alpha channels must be a simpleBUILDbump
b. When a new version is started, all subsequent changes must be released under a newMAJOR.MINOR.PATCH(i.e., theBUILDis reset to0).
c. This way, the app will always be incremental by1unit number. -
The version number must be bumped right after releasing the previous
apk, so the system may be able to simply touch theBRANCH.BUILDpart.
Issues and features
When working on issues and new features:
- For soon-to-be-released fixes and features, we can close the issue and merge the related branch into
develop. - For to-be-determined features, we can close the issue in the last commit of the branch but we cannot merge the branch back into
develop. - The
hotfixorfeaturebranch must be in theISSUE-SHORT_DESCformat, so it can be visually connected to an issue. - After a branch is merged into
developand the related changes have been put into arelease, thehotfixorfeaturebranch must be deleted.
Continuous Integration
We should promptly set up a CI system that, on every commit on develop, will take care of:
- Test the project.
- Bump the
BRANCH.BUILDin theunstable.###format. - Build an
developrelease. - Upload the
apksomewhere.