Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
TurTLE
TurTLE
Commits
63ead064
Commit
63ead064
authored
Jan 26, 2016
by
Cristian Lalescu
Browse files
update versioning guidelines
parent
dd8ef14d
Changes
1
Hide whitespace changes
Inline
Side-by-side
documentation/_static/development.rst
View file @
63ead064
...
...
@@ -7,23 +7,23 @@ Development
Versioning guidelines
---------------------
Version tracking for `bfps` is done with `git` (see https://git-scm.com/
Version tracking for
:mod:
`bfps` is done with
`
`git`
`
(see https://git-scm.com/
for description).
The branching model described at
http://nvie.com/posts/a-successful-git-branching-model/ should be
adhered to as strictly as possible.
The usable `VERSION` number will be constructed according to semantic
versioning rules (see http://semver.org/), `MAJOR.MINOR.PATCH`.
In principle, if you use `bfps` and you've created children of the
`NavierStokes` class, you should not need to rewrite your code unless
the `MAJOR` version changes.
The usable
`
`VERSION`
`
number will be constructed according to semantic
versioning rules (see http://semver.org/),
`
`MAJOR.MINOR.PATCH`
`
.
In principle, if you use
:mod:
`bfps` and you've created children of the
:class:
`NavierStokes
<bfps.NavierStokes.NavierStokes>
` class, you should not need to rewrite your code unless
the
`
`MAJOR`
`
version changes.
There are 2 main branches, `master` and `develop`.
`setup.py` will call `git` to read in the `VERSION`: it will get the
There are 2 main branches,
`
`master`
`
and
`
`develop`
`
.
`
`setup.py`
`
will call
`
`git`
`
to read in the
`
`VERSION`
`
: it will get the
latest available tag.
If the active branch name contains either of the strings `develop`,
`feature` or `bugfix`, then the full output of `git describe --tags`
If the active branch name contains either of the strings
`
`develop`
`
,
`
`feature`
`
or
`
`bugfix`
`
, then the full output of
`
`git describe --tags`
`
will be used;
otherwise, only the string before the dash (if a dash exists) will be
used.
...
...
@@ -32,25 +32,28 @@ At the moment the following rules seem adequate.
Once I get feedback from someone who actually knows how to handle bigger
projects, these may change.
1. New features are worked on in branches forked from `develop`, with
the branch name of the form `feature/bla`.
Feature branches are merged back into `develop` only after all tests
1. New features are worked on in branches forked from
`
`develop`
`
, with
the branch name of the form
`
`feature/bla`
`
.
Feature branches are merged back into
`
`develop`
`
only after all tests
pass.
2. Whenever the `develop` branch is merged into `master`, the last
commit on the `develop` branch is tagged with `MAJOR.MINOR`.
3. Whenever a bug is discovered in version X.Y, a new branch called `vX.Y`
is forked from the corresponding `master` merge point.
A new bugfix branch is forked from `vX.Y`, the bug is fixed, and then
this bugfix branch is merged into all affected branches (this includes
`vX.Y`).
After merging, the respective merge points are tagged adequately (`vX.Y`
gets the tag X.Y.1).
2. Whenever the ``develop`` branch is merged into ``master``, the last
commit on the ``develop`` branch is tagged with ``MAJOR.MINOR``.
3. Whenever a bug is discovered in version X.Y, a new branch called ``vX.Y``
is forked from the corresponding ``master`` merge point.
A new bugfix branch is forked from ``vX.Y``, the bug is fixed.
The last commit in the bugfix branch is tagged X.Y.1.
This bugfix branch is merged into all affected branches (this includes
``vX.Y``).
After merging, the respective merge points into branches other than
``develop``, ``bugfix`` or ``feature`` are tagged accordingly;
there's no need to tag ``develop`` etc since those contain the git
commit in the version anyway.
4. Whenever a bug is discovered in version X.Y.Z, a bugfix branch is
forked from `vX.Y`, and then rule 3 is adapted accordingly.
forked from
`
`vX.Y`
`
, and then rule 3 is adapted accordingly.
------------
Code testing
------------
Testing for `bfps` is done with `tox`.
Testing for
:mod:
`bfps` is done with
`
`tox`
`
.
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment