[cvsnt] Re: Moving files to different directories

kerry richard richard.kerry at siemens.com
Tue Mar 28 17:03:03 BST 2006


 
If what you want to do is to make a file available at a new location,
with the history it had at the old location, but to leave it accessible
in the old location by date or tag, the method is as follows.

1.  Copy the ,v file from the old location to new in the repository.
	File is now accessible in both places.
2.  Cvs Remove the file at the old location in a sandbox, and Commit the
folder it's in.
	This performs a version-controlled removal of the file.

The file's history is still there in the old location.  
It can be retrieved by any tag from before the Remove, or by an update
using date/time.
A simple update performed in the old location in any user's sandbox will
remove the file.
A simple update performed in the new location in any user's sandbox will
make the new file appear.  Revision Graph or any other command to read
the history will show the full history.

Helpfully,
Hopefully,
Richard.

PS.
The only possibility of a problem I can forsee is if someone then
creates a tag or branch on the file in the old place.  As it is now
completely separate from the file in the new location this will not be
visible from the new location.
This seems to me to be unlikely to occur in normal use.  You can
probably set an ACL to stop it happening.



-----Original Message-----
From: cvsnt-bounces at cvsnt.org [mailto:cvsnt-bounces at cvsnt.org] On Behalf
Of Harrison, Andrew
Sent: 28 March 2006 16:46
To: cvsnt at cvsnt.org
Subject: [cvsnt] Re: Moving files to different directories

> If you go into your repository through the filesystem on the server
(after 
> shutting down cvs), you can rename .xxx,v files, or move them around. 
> They'll have the old revision history, and when you start CVS up
again, and 
> update, it should update everyone's code to the new structure names.
>
> Obviously, you'd want to do it as a clean break, and make a backup
first.

Thanks Jesse, but unfortunately we can't do it as a clean break. We have
to be able to reproduce historical versions using the old structure.
Plus if there are any users working on branches using the old structure,
then (I think) their sandbox will break next time they try to do
anything on any of the affected files.

Rgds,
Andy


--
Andy Harrison - Platform Software Engineer 
Anite Telecoms Ltd. Ancells Business Park, Fleet, Hampshire, GU51 2UZ,
UK [http://www.anite.com/telecoms]
"No matter how bad things seem... nothing could be worse than being used
as a towel rail." - A.A. Milne




Scanned for viruses by BlackSpider MailControl. The integrity and
security of this message cannot be guaranteed. This email is intended
for the named recipient only, and may contain confidential information
and proprietary material. Any unauthorised use or disclosure is
prohibited.
_______________________________________________
cvsnt mailing list
cvsnt at cvsnt.org
http://www.cvsnt.org/cgi-bin/mailman/listinfo/cvsnt



More information about the cvsnt mailing list