info-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: deleting a branch


From: Jim Hyslop
Subject: Re: deleting a branch
Date: Fri, 09 Sep 2005 09:54:13 -0400
User-agent: Mozilla Thunderbird 1.0.6 (Windows/20050716)

Russ Sherk wrote:
On 9/9/05, Victor Safronovich <address@hidden> wrote:

Hello all!

I have a medium cvs experience, i know how to delete a tag(cvs rtag -d), but 
when i delete a
branch(cvs rtag -d my_branch my_module), i receive following message:
[...skip...]
 W /home/cvs/nausite/my_module/file1.tmp,v : my_branch is branch tag : NOT 
DELETING
 W /home/cvs/nausite/my_module/file2.tmp,v : my_branch is branch tag : NOT 
DELETING
 W /home/cvs/nausite/my_module/file3.tmp,v : my_branch is branch tag : NOT 
DELETING
 W /home/cvs/nausite/my_module/file4.tmp,v : my_branch is branch tag : NOT 
DELETING
 W /home/cvs/nausite/my_module/file5.tmp,v : my_branch is branch tag : NOT 
DELETING
[...skip...]

What  am  i  doing  wrong?  and  Is  deleting  a  branch  a  safe operation for
repository?


From rtag help:
------------------------
Usage: cvs rtag [-abdFflnR] [-r rev|-D date] tag modules...
        -d      Delete the given tag.
        -F      Move tag if it already exists.
!!        -B      Allow move/delete of branch tag (not recommended).  !!
------------------------

Use with caution.

And only when you really need it.

If you delete a branch while it is still active (i.e. 'cvs update -r branch' followed by 'cvs tag -Bd branch') you may get strange behaviour. Make sure nobody has the files checked out on the branch before removing its tag.

> I think it is dangerous because it perminantly
removes all revisions on the branch (physically deletes them from the
repository).  So be sure you want to remove them.   The difference is
that a regular tag just points to or references a version (MY_TAG=1.3
for myfile.txt)  so deleting a regular tag just removes the reference.
 Whereas a branch tag creates a new branch on the tree where revisions
live.  Removing the branch removes the home for the revisions and they
are lost in the ether floating aimlessly...

How dramatic! And fortunately, how incorrect ;=)

The only thing that is lost is the convenient way to reference the branch. All the revisions are still there, with complete history:

address@hidden ~/cvs/local/cvs-test
$ cvs st
===================================================================
File: hello.txt         Status: Up-to-date

   Working revision:    1.1     Wed Sep  7 14:09:11 2005
Repository revision: 1.1 /my_documents/local_cvs/cvs-test/hello.txt,v
   Sticky Tag:          base-bt (branch: 1.1.2)
   Sticky Date:         (none)
   Sticky Options:      (none)


address@hidden ~/cvs/local/cvs-test
$ echo boo>>hello.txt

address@hidden ~/cvs/local/cvs-test
$ cvs ci -m "change on branch"
Checking in hello.txt;
/my_documents/local_cvs/cvs-test/hello.txt,v  <--  hello.txt
new revision: 1.1.2.1; previous revision: 1.1
done

address@hidden ~/cvs/local/cvs-test
$ cvs up -A
U hello.txt

address@hidden ~/cvs/local/cvs-test
$ cvs tag -B -d base-bt
D hello.txt

address@hidden ~/cvs/local/cvs-test
$ cvs lo hello.txt

RCS file: /my_documents/local_cvs/cvs-test/hello.txt,v
Working file: hello.txt
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;     selected revisions: 2
description:
----------------------------
revision 1.1
date: 2005/09/07 14:09:11;  author: Jim;  state: Exp;
branches:  1.1.2;
adding
----------------------------
revision 1.1.2.1
date: 2005/09/09 13:46:25;  author: Jim;  state: Exp;  lines: +1 -0
change on branch
=============================================================================

address@hidden ~/cvs/local/cvs-test
$ cvs up -r 1.1.2.1 hello.txt
U hello.txt

address@hidden ~/cvs/local/cvs-test
$ cvs st
===================================================================
File: hello.txt         Status: Up-to-date

   Working revision:    1.1.2.1 Fri Sep  9 13:51:37 2005
Repository revision: 1.1.2.1 /my_documents/local_cvs/cvs-test/hello.txt,v
   Sticky Tag:          1.1.2.1
   Sticky Date:         (none)
   Sticky Options:      (none)


--
Jim





reply via email to

[Prev in Thread] Current Thread [Next in Thread]