Repositories and RYS versioning¶
How the Easy8 team organises its repositories. Customer code follows Where to put your code.
Development levels¶
- Redmine: the Rails application Easy8 is built on. A new Redmine release replaces our copy, so local changes there are overwritten. Core changes are allowed only after approval, and the author is responsible for them.
- Client modifications: code for one client lives in a
modification_*plugin. Because core changes are minimal, there is little or no code review, and the client mostly verifies the functionality.
Repositories for client-specific modifications¶
For some clients we keep a repository, usually a fork of a platform release with the customisations added.
RYS repositories¶
Each RYS repository has two protected branches, master and devel. master holds the stable version in production, which client applications reference with ~>. Open merge requests against devel.
RYS versions follow semantic versioning:
- MAJOR: release-specific changes (whole new features, refactoring, breaking changes).
- MINOR: small new features, migrations, minor changes of internal logic.
- PATCH: bug fixes and harmless changes such as documentation. A patch version cannot include migrations or breaking changes.