PHProjektReleasemanagement
From Wikipedia
To increase the stability of the next releases of PHProjekt, we are switching from a continious development scheme to a release based.
General procedure
While the main development stays on the main ("head") tree, the releases are going to happen on their own branches. New features and changes of the database or functionality only happen in the head tree, not in the stable branches.
For example:
- HEAD:
Main development tree, everything new happens just here.
- PHPROJEKT50
PHProjekt 5.02 ist the current stable, released version.
- PHPROJEKT51
Currently released as PHProjekt 5.1. Only bugfixes are done. All the PHProjekt 5.1.X releases are made from this branch.
- PHPROJEKT52
The current stable version. Only bugfixes are done. All the PHProjekt 5.1.X releases are made from this branch.
- PHPROJEKT60
The next Release of PHProjekt. HEAD until there are enough features to branch PHProjekt 6.
Release Procedure
- Minor releases:
5.0 -> 5.0.1: Bugfix release, no change of functionality or database, no additional features, no update routine required
- Medium releases:
5.0 -> 5.1: additional features, change of database structure, update routine required
- Major releases:
5.x -> 6.0: we break important things. Addons, Modules and the like are not expected to work any more. in exchange the user gets lots of nice new features.
Working with CVS
If you want to do a bugfix, is has to be added to the stable and to the head branch.
- To checkout the HEAD branch:
export CVS_RSH=ssh
cvs -z3 -d:ext:developername@thinkforge.org:/cvsroot/phprojekt5 co phprojekt50
- To checkout the stable branch:
export CVS_RSH=ssh
cvs -z3 -d:ext:developername@thinkforge.org:/cvsroot/phprojekt5 co -r PHPROJEKT52 -d phprojekt52 phprojekt50
In case this isn't working (error in cvs might cause problems) try instead:
cvs -z3 -d:ext:developername@thinkforge.org:/home/gforge/cvsroot/phprojekt5 co -r PHPROJEKT52 -d phprojekt52 phprojekt50
- To change the current sandbox:
cvs -z3 -d:ext:developername@thinkforge.org:/cvsroot/phprojekt5 update -dP -r PHPROJEKT52
cvs -z3 -d:ext:developername@thinkforge.org:/cvsroot/phprojekt5 update -dAP

