#830 Use svn tags for bugfix releases
Metadata
Property | Value |
---|---|
Reported by | Oliver Sander (oliver.sander@tu-dresden.de) |
Reported at | Oct 22, 2010 11:32 |
Type | Feature Request |
Version | Git (pre2.4) [autotools] |
Operating System | Unspecified / All |
Last edited by | Christian Engwer (christi@conan.iwr.uni-heidelberg.de) |
Last edited at | Mar 21, 2011 09:28 |
Closed by | Christian Engwer (christi@conan.iwr.uni-heidelberg.de) |
Closed at | Mar 21, 2011 09:28 |
Closed in version | Unknown |
Resolution | Fixed |
Comment |
Description
I would like to request a change to the svn repository layouts of the Dune core modules.
[In the following I use the word 'release' for an x.y release like dune-istl-2.0, and the word 'bugfix release' for an x.y.z release like dune-istl-2.0.2.]
Currently, each module has three subdirectories: trunk, branches, and releases.
- 'trunk' contains the development branch
- 'releases' contains a subdirectory for each bugfix release, an x.y-release is treated like x.y.0.
- 'branches' contains other branches that are not directly related to releases
There are certain inconveniences associated to the way releases are handled by this layout.
- Users that want to use svn to always have the bleeding-edge version of a given release need to switch branches when a bugfix release is created.
- Maintainers of stable modules have to switch branches to commit to when a new bugfix release appears. This appears to be challenging for some people (read: me).
I therefore propose to switch to a more traditional svn layout. Here's what it would look like:
- 'trunk' contains the development branch as before
- 'branches' contains a branch for each release, and all other random branches
- 'tags' contains a snapshot (a 'tag' in svn-speak) for each bugfix release
[NB: 'tags' is the standard svn name for this directory. We may stick with the name 'releases' though, if requested.]
All bugfix commits for a release happen on a single branch for that release in the 'branches' directory. Release tarballs are created from the tags in the 'tags' directory. These can be made read-only. Users of stable branches can update/commit fixes ad libitum without ever having to adjust their paths.
I don't see any disadvantage to this alternative layout, beyond the effort needed to switch over. Please give me your opinion.