52 lines
1.9 KiB
Markdown
52 lines
1.9 KiB
Markdown
gLabels Branching Model
|
|
=======================
|
|
|
|
At any time gLabels will typically have 2 active branches: a stable branch and a development branch (master). Other branches may also exist to work on major features.
|
|
|
|
|
|
Stable branch
|
|
-------------
|
|
|
|
A stable branch will maintained in a git branch named glabels-major.minor.
|
|
E.g. "glabels-4.0". Some characteristics of a stable branch are
|
|
|
|
- Prerequisites are fixed for the lifetime of the branch.
|
|
- The primary purpose of releases within a branch is to fix bugs.
|
|
- Besides bug fixes, releases may also include new and updated translations,
|
|
updated documentation, and new label templates.
|
|
- No new features will be introduced by a release within a
|
|
stable branch.
|
|
|
|
|
|
Unstable/development branch
|
|
---------------------------
|
|
|
|
The current development branch is maintained in the Git master branch.
|
|
Some characteristics of the development branch are
|
|
|
|
- Prerequisites are volatile and may change over time.
|
|
- Features and file formats may be volatile and change over time.
|
|
- No attempt will be made to maintain backwards compatibility between commits
|
|
- Every effort will be made to make sure the development branch will build and run without error.
|
|
- There will be no official unstable releases based on this branch. However, CI snapshots may be made available.
|
|
|
|
Major feature branches
|
|
----------------------
|
|
|
|
Major features that could risk breaking the development branch will be developed in their own branches.
|
|
|
|
|
|
gLabels Version numbering
|
|
=========================
|
|
|
|
* Versions are numbered major.minor.micro (e.g. 4.0.3)
|
|
* major version indicates a major change in architecture or technology
|
|
- 2.x.x was based on gtk+-2
|
|
- 3.x.x was based on gtk+-3
|
|
- 4.x.x is based on qt-5
|
|
* minor version indicates a minor change in features or design
|
|
- A new stable branch will be created for each new minor version
|
|
* micro version indicates a bugfix release
|
|
- See above for release characteristics within a stable branch
|
|
|