[Top][All Lists]

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

Re: "cvs move" command

From: Pierre Asselin
Subject: Re: "cvs move" command
Date: Tue, 14 Jan 2003 17:24:23 +0000 (UTC)
User-agent: nn/6.6.4

In <mailman.259.1042548501.21513.bug-cvs@gnu.org> "Matt J. Gumbley" 
<mgumbley@enigmadata.co.uk> writes:

>> "Pierre Asselin" <pa@panix.com> wrote in message
>> news:avhtuu$ka0$1@reader1.panix.com...
>>>It also needs to remove all tags from destfile,v .  [And other stuff]

>cvs move would be very popular. Perhaps it shouldn't remove all tags?

It has to remove them.

>I've currently got a problem with moving files in CVS;
>[ ... ]
>I now checkout Version_1a, and see the same version of the file as 
>directory/file and directory/subdir/file - the former is fine; the 
>latter location didn't exist at Version_1a.

That's because you didn't remove the Version_1a tag from the
duplicated file.  If you don't remove the old tags, the new file shows
up when you check out old releases.

>Now I presume that in order to checkout the two versions of this 
>repository with the files in the right place for the given version, I'm 
>going to have to hand-edit the directory/subdir/file,v when I copy it to 
>its new location, to indicate that its first tag is Version_2 and that 
>it shouldn't exist in the earlier versions.

Although the RCS ,v files are editable, it's better to do that from a
cvs working directory.  Something like "cvs tag -d Version_1a subdir/file".

Remodeling a cvs project is a major pain in the behind.  The easy
way to rename a file is to cvs-delete it under the old name and
cvs-add it under the new name;  the new name won't show any revision
history predating the move, but you can state the old and new names
in the commit message and later follow the chain manually.  If you
want the new name to reflect the old history, you have to copy the
RCS files in the repository and muck with old tags as you just did.

For a really large refactoring, it might actually make sense to
stabilize the code and make a clean break by reimporting the new
layout as a new project.

Matt, you may want to look at Kaz Kylheku's meta-cvs.  I'll save Kaz some
work and post his url's:
    FreshMeat page: http://freshmeat.net/projects/mcvs
    Home page: http://users.footprints.net/~kaz/mcvs.html

reply via email to

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