[development] new CVS branch/tag conventions (was Re: tagadelic 'backport' for 4.7)

Derek Wright drupal at dwwright.net
Wed Oct 4 17:33:04 UTC 2006

On Oct 4, 2006, at 7:05 AM, inkfree press wrote:

> (I am thinking about a script,
> say PHP or AppleScript, which breaks apart a file name string into
> constituent parts. This is sometimes helpful in automated file  
> systems.)

here's the code already in cvs.module (well, in a patch[1]) for this,  
using the '--' delimiter:

   list($super_ver, $base_ver) = explode('--', $tag->tag);
   $super = explode('-', $super_ver, 5);
   $base = empty($base_ver) ? array() : explode('-', $base_ver);

then, you've got 2 nice arrays to keep the 2 parts of your version  
string separate... ;)  this also nicely handles the cases of regular  
branches that don't have the '--' (e.g. the default, stable  
DRUPAL-4-7 or DRUPAL-5 branch for a given contrib).

keep in mind that the *file* names have nothing to do with this  
discussion.  the subject says "CVS branch/tag conventions".  the  
filenames will be like so:

# official 5.x-0.1 release
# 1st patch update release on stable DRUPAL-5 branch, from  
DRUPAL-5--0-1 tag

# official 4.7.x-1.0 release
# initial release off the DRUPAL-4-7--1 branch, from DRUPAL-4-7--1-0 tag

# nightly snapshot tarball from the DRUPAL-4-7--2 branch (no release  
# (assuming there's no 4.7.x-2.0 release yet) once there's a 2.0  
release, the snapshots will start being called "signup-4.7.x-2.1- 
dev.tar.gz, etc).

# core releases would be unchanged:

make sense?

[1] http://drupal.org/node/84706#comment-142624 for the interested/ 
horrified reader.

More information about the development mailing list