info-cvs
[Top][All Lists]
Advanced

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

Re: Deleted case insensitive folders clashing on windows


From: Spiro Trikaliotis
Subject: Re: Deleted case insensitive folders clashing on windows
Date: Wed, 28 Nov 2007 19:44:20 +0100
User-agent: Mutt/1.5.13 (2006-08-11)

Hello Frans,

* On Wed, Nov 28, 2007 at 10:24:08AM +0100 Frans Englich wrote:
 
> This is all a bit hilarious since the directory is deleted, and there's no 
> reason to try to write it. This was experienced with TortoiseCVS, which 
> passes the -P flag, it seems.

I did not investigate very much, but it seems CVS handles the -P flag
*after* it has checked out everything. Thus, it first creates both
directories. After everything is checked out, it goes through the
directories and deletes the empty ones. If you have the "name clash"
because of the case insensitive FS, this is too late.

> Any ideas for how to fix this?

Yes: The CVS people might want to change the behaviour of the -P
command. ;)

For me, I found a workaround, but you have to modify the CVS/
directories contents. I assume you have a project project with
project/pro and project/PRO directories, and project/PRO is empty:

0. (Make sure to *never* use "cvs up -d" in this sandbox, or you will
   have to do everything manually again)

1. Now, cleanly check out a new sandbox of project:
   $ cvs co project
   and cd to that directory:
   $ cd project

2. Now, issue a "cvs up -P". If there is no error message ("is in the
   way... move away..."), you are done. Skip the rest of the
   instructions.
   (Yes, from me experience, the order in which CVS processes the
   directories changes, even with exactly the same setup and the same
   machines. I don't know why, but this is the case.)

3. Open CVS/Entries in your favorite editor and change the entry PRO to
   pro.

4. Open pro/CVS/Repository and change the directory name PRO to the
   lower-case one. MAKE SURE YOU KEEP THE REST OF THE STRUCTURE!

(5. Repeat steps 3 and 4 for every directory where this problem occurs,
   as reported in step 2)

6. Issue a "cvs up". Now, everything should work fine.

With a little experience, you can even automate this whole process...
(Been there, done that.)

HTH,
   Spiro.

-- 
Spiro R. Trikaliotis                              http://opencbm.sf.net/
http://www.trikaliotis.net/                     http://www.viceteam.org/




reply via email to

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