[cvsnt] Feature request: Commitable tags

Tuomas Huhtanen tuomas.huhtanen at vertex.fi
Mon Apr 28 09:15:00 BST 2003


Glen Starrett wrote:
> Correct me if I'm wrong here, but it seems as though he is using the term
> "release" where I would use something like "product version"--that is, he is
> releaseing different products that have the same core but some differences.

That is correct. Release here means product version as in the 
Cederqvist, http://www.cvshome.org/docs/manual/cvs_4.html#SEC44 .

> I might be totally off base but if that is the case, then you would probably
> be better served by using conditional compilation in code (assuming that is
> available in whatever language you are using) or working out some sort of
> pre-compile step with your code if it isn't supported.

That is one approach to the problem. But as you said, that assumes 
certain techniques in the programming language in use. In our case (and 
in generic version control case) that is not available.

I'm very eager to see my software organized in such modules that I could 
just branch the module instead of the whole code base.

But large code bases tend to evolve in such manner that the exact 
boundaries of the modules are not that clear anymore.

The approach I would like to use offers "dynamic modularisation". I.e if 
you notice that these are the files that need changes in this release, 
then you just branch those files and update your tags to point to that 
branch. Of course, there would still be careful designing how to keep 
the modules independent, but the cvs would co-operate to maintain that goal.

Tuomas Huhtanen

> 
> Glen Starrett
> 
> 
> -----Original Message-----
> From: cvsnt-bounces at cvsnt.org [mailto:cvsnt-bounces at cvsnt.org]On Behalf
> Of Tony Hoyle
> Sent: Friday, April 25, 2003 11:38 AM
> To: cvsnt at cvsnt.org
> Subject: Re: [cvsnt] Feature request: Commitable tags
> 
> 
> On Fri, 25 Apr 2003 20:09:18 +0300, Tuomas Huhtanen
> <tuomas.huhtanen at vertex.fi> wrote:
> 
> 
>>How I would like to do it:
>>Create commitable Tags ct_R1, ct_R2, ct_R3
>>edit the file A in the ct_R1 (meaning that I have checked out ct_R1, the
>> file actually resides in the main trunk)
>>update tags ct_r2 and ct_R3 to point to the same revisoin as ct_R1 does.
>>(Now we have single revision with three tags pointing to it (plus the
>>original revision))
> 
> 
> You can't do that unless ct_R1 == HEAD, otherwise you'd have to create a
> branch, and move the 3 tags onto it.
> 
> There's nothing to stop you moving tags around now if you want, it's just
> difficult to track so not recommended.
> 
> 
>>and then we edit A in ct_R2. Now if we try to commit it, we cannot do
>>it, since ct_R2 is now outdated. Now we need to branch the A to b_R2 and
>> commit the change there. Also because we want the change to ct_R3, we
>>update the ct_R3 to point to the b_R2 revision.
>>(Now we have two revisions with two tags pointing to one and one tag
>>pointing to the other)
> 
> 
> ..which CVS already supports.  I don't see what the 'commitable' tags have
> gained you in this case.
> 
> Tony
> 
> _______________________________________________
> cvsnt mailing list
> cvsnt at cvsnt.org
> http://www.cvsnt.org/cgi-bin/mailman/listinfo/cvsnt
> 



More information about the cvsnt mailing list