The SubVersion repository of *OpenDocumentPHP* has three main paths,
namely “/php”, “/doc”, and “/web”. The software development process will
find its place in the “/php” path and is itself structured too. The
other two paths are for the – currently not started-
(online-)documentation, which should be in the “/doc” path, and the
Joomla!-Template development, which is in the “/web” path.
Unless you are not a web designer or web developer you do not need to
get the “/web” stuff, and unless you are not a documentation technician
and the new (online-) documentation did not started, you do not need the
“/doc” stuff.
There might be other stuff in the root of our repository, as “/phase1”,
“/phase1.1”, “/poc”. This is very old stuff and will be removed or
archived in the (near) future.
So the main development cycle will be took place in the “/php”
directory. You will find three subdirectory in there:
1. “/branches”
2. “/tags”
3. “/trunk”
The head or main development will be in the “/trunk” part. This is
always the leading edge of our source code. If you are a developer and
want to make changes, this is the stuff you need. You can get it via:
svn co
https://opendocumentphp.svn.sourceforge.net/svnroot/opendocumentphp/php/thrunk
opendocumentphp
The other two subdirectories have different purpose. The “/tags”
directory will held our releases. Currently there is a “0.5.3” in it and
I will make a release of *OpenDocumentPHP* 0.5.3 directly out of the
“/tags/0.5.3” source code. It is a kind of release history so to speak.
If a release is ready to be build and shiped, the release manager will
copy a snapshot of the “/trunk” directory right into a new
“/tags/<release>” directory. After he or she did that she or he can
simple checkout this tag and make the distribution and PEAR releases out
of it. - I am currently working on some (shell-)scripts to make this as
easy as possible. That is the main reason why 0.5.3 is not shipped by now.
The release naming convention of *OpenDocumentPHP* is currently X.Y.Z,
where X is the major release number (currently 0, to show that we are
still not stable), Y is the minor release number (currently 6) and Z is
the sub-minor release number.
Every major-/minor release number have it own branch. So the last 0.5.Z
development stuff will always be found in the “/branches/0.5”
subdirectory, if there will be ever a bug fix necessary for 0.5.3 a
developer can easily take the “/branches/0.5” as starting point, make
the fixes and public a new 0.5.4 release. Which means he makes his
changes to the “/branches/0.5” code base as long as he is ready and if
it is tested, he or she can create a new “/tags/0.5.4” directory and
start the publication process for the “0.5.4” bug-fix-release.
At that time in the future, where we will be changing from 0.6 to 0.7
the last “/trunk” will be copied to the new “/branches/0.6” directory
and the “/trunk” will be the “new 0.7 trunk/branch” and later (when 0.8
comes up) become “/branches/0.7” and so on. I hope this gets clear.
|