Hello, I'm replying to an old mail (and answer) from me, because I took the time to generate a skript which shows the behaviour I mentioned (and it still happens, even with 1.11.17).
My first posting on this can be found on http://lists.gnu.org/archive/html/info-cvs/2004-04/msg00201.html My problem is that if I have a directory Dir/, and I rename it to the name dir/, cvs has problems with this on a Windows box. * On Mon, Apr 19, 2004 at 11:10:42AM -0400 Derek Robert Price wrote: > Spiro Trikaliotis wrote: > > >Anyway, if I do a checkout (again, with -P) from the Windows machine, I > >get the following files: > > > >module/Dir/1 > >module/Dir/2 > > > >but the files 1 and 2 have the contents of the files which are in > >module/dir/1 and module/dir/2! [...] > You shouldn't have this problem if you upgrade your server to 1.11.15. No, this does not fix this issue. The attached bash-skript uses an empty module named "testproj" to show the issue. You can run it from a Linux box to generate such a module (you have to answer "y" two times for the release -d), and see what happens. The following tests were all done using self-compiled plain-vanilla cvs 1.11.17 on a Linux box and a Windows box (client); the server was always used remotely via ssh, and it was always located on the Linux box. If I checkout the testproj from the Linux box and want to release it again, I get: [EMAIL PROTECTED]:~/6$ cvs co testproj cvs checkout: Updating testproj U testproj/bla cvs checkout: Updating testproj/Old cvs checkout: Updating testproj/old U testproj/old/testfile [EMAIL PROTECTED]:~/6$ ls -l testproj/ insgesamt 12 -rw-r--r-- 1 me me 9 21. Jun 15:36 bla drwxr-xr-x 2 me me 4096 21. Jun 15:51 CVS drwxr-xr-x 3 me me 4096 21. Jun 15:51 old [EMAIL PROTECTED]:~/6$ cvs release -d testproj You have [0] altered files in this repository. Are you sure you want to release (and delete) directory `testproj': y If I do the same on a windows machine (full cygwin installation), I get: [EMAIL PROTECTED] ~/cvstest $ cvs co testproj cvs checkout: Updating testproj U testproj/bla cvs checkout: Updating testproj/Old cvs checkout: Updating testproj/old U testproj/old/testfile [EMAIL PROTECTED] ~/cvstest $ ls -l testproj/ total 1 drwxr-xr-x+ 2 me None 0 Jun 21 15:50 CVS drwxr-xr-x+ 3 me None 0 Jun 21 15:50 Old -rw-r--r-- 1 me None 10 Jun 21 15:36 bla [EMAIL PROTECTED] ~/cvstest $ cvs release -d testproj cvs server: WARNING: global `-l' option ignored. cvs update: Old/testfile is no longer in the repository You have [0] altered files in this repository. Are you sure you want to release (and delete) directory `testproj': y cvs release: no such directory: testproj Have a look at the line "cvs update: Old/testfile is no longer in the repository". Furthermore, you will recognize that the Linux machine has the (correct!) "old/" directory, while the Windows box named it "Old/" with an uppercase "O". If I edit testproj/Old/CVS/Repository and replace Old/ with old/, all works as expected. So, obviously, cvs seems to get the traces to the "wrong" directory. Because of this, not only release does not work, but even a commit to the files in these directories is not possible. In fact, I have to manually edit the CVS/ files to get it to work from the windows box. Regards, Spiro. -- Spiro R. Trikaliotis http://www.trikaliotis.net/ http://www.viceteam.org/
#! /bin/sh cvs co testproj cd testproj cat > bla <<% junk... % cvs add bla mkdir Old cat > Old/testfile <<% just some junk % cvs add Old cd Old cvs add testfile cd .. cvs commit -m "- 1st version, Old/" cvs tag v1 cd Old mv testfile .. cvs rm testfile cd .. cvs rm Old cvs commit -m "- 2nd version, after removing" cvs tag v2 cd .. cvs release -d testproj cvs co -P testproj cd testproj/ mkdir old/ cvs add old cd old/ cat > testfile <<% just some junk % cvs add testfile cd .. cvs commit -m "- 3rd version, with old/" cvs tag v3 cd .. cvs release -d testproj
_______________________________________________ Info-cvs mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/info-cvs
