[cvsnt] Feature request: Commitable tags

Tuomas Huhtanen tuomas.huhtanen at vertex.fi
Mon Apr 28 09:14:54 BST 2003


Community technical support mailing list was retired 2010 and replaced with a professional technical support team. For assistance please contact: Pre-sales Technical support via email to sales@march-hare.com.


Tony Hoyle wrote:
> 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.

ct_R1!=HEAD, ct_R1 _points_ to HEAD (in this case). The ct_R1 could 
point to any other branches as well.

> There's nothing to stop you moving tags around now if you want, it's just
> difficult to track so not recommended.

I know that the downside is that I can't track the evolution of the 
tags. But compared to present situation, I wouldn't loose any 
information. After all, the file level history is still well known. No 
difference to what we have today. The metadata history is just untrackable.

>>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.

You are right. CVS does support most of the operations I would use, the 
only missing thing is that I cannot commit to a file that has been 
checked out with a sticky tag.

Maybe this example was still too short to reveal the point of commitable 
  tags. But imagine doing those operations on hundreds of files at the 
time. In that case it is mandatory that the operations you do, can be 
done easily, i.e all at once.

So once more:
Just because the file is checked out with a sticky tag (with this 
writable tag) dont prevent me commiting the changes. Just commit the 
changes to the branch the file is in and update the tag to point to that 
new revision. (If there is no other constraints that prevent me to do 
that, for example, the checked out revision is not a leaf in a branch).

Tuomas Huhtanen





More information about the cvsnt mailing list
Download the latest CVSNT, TortosieCVS, WinCVS etc. for Windows 8 etc.
@CVSNT on Twitter   CVSNT on Facebook