[Rt-devel] Relabeling subversion branches

Max Bowsher maxb at ukf.net
Thu Jul 1 18:27:32 EDT 2004


Jesse Vincent wrote:
> So right now, we've got:
>
> rt/trunk  (3.0)
> rt/branches/rt-3.1 (3.2)
> rt/branches/rt-3.3 (3.3)
>
> It's my intent to re-label the branches to more accurately convey what's
> going on with the source code. This should make it somewhat easier for
> someone who occasionally works with RT to know immediately which version
> of RT is which and to be able to get at the version they want more
> easily.
>
> My new-world model would look something like  this:
>
>
> rt/branches/maint-3.0  (3.0, as it's now only recieving maintenance fixes)
>
> rt/branches/stable (Currently 3.2. Stable releases are cut from this
> version.)
>
> rt/branches/testing (Currently 3.3. We're in the process of
> stabilizing it for release and aren't making
> incompatible schema changes or otherwise ripping
> apart the system.)
>
> rt/branches/experimental (Currently this doesn't exist. Until the
>   release of 3.2, this was 3.3.)
>
> Should the various stable/testing/experimental branches have their major
> version numbers as part of their pathnames?  Is this new plan actually
> better than what we do now? Is there a better model we should be
> following that will be more useful to the general public?

I favour identifying branches by version number, and putting the information about which version is which phase of development on a
webpage.

My reason for this is so that you can easily identify which branch is which version and vice versa.
If you name the branches after phases of development, then the rt3.3/3.4 branch will be known as 'experimental', 'testing', and
'stable' at various points in it's lifecycle. Likewise, the 'stable'/'testing'/'whatever' branch doesn't tell you what version you
are talking about, unless coupled with a point in time.

I believe that the occasional user of RT is more likely to go for a tarball than a checkout, and in any case, would be better served
by a webpage, giving more detail about the status of various branches than is possible in a one-word description.

Therefore, I suggest the following layout:

rt/branches/rt-3.0
rt/branches/rt-3.2
rt/branches/rt-3.3

- and either:
rt/trunk
- or:
rt/branches/rt-3.5

Note that anyone who knows how an odd-even versioning scheme works, and knows RT uses it, can instantly deduce the statuses of the
various branches from a "svn ls" of the branches directory.

Max.



More information about the Rt-devel mailing list