From: Nicholas Clark Date: 12:55 on 27 Apr 2005 Subject: CVS Fucking crock of shit fails to commit files at the top level. Second time it's fucked up in some way when given the simple task of cvs -d :pserver:nicholas@xxx.xxxx.xxx:/cvs/public commit perl -lwe 'print"\r^\n\a"^"\eN\e"^substr$^X,-4while!select$,,$,,$%,.25' Nicholas Clark
From: Nicholas Clark Date: 10:38 on 11 Jul 2007 Subject: CVS $ cvs add ../rt/local/html/Admin/Elements/EditScrips cvs server: scheduling file `../rt/local/html/Admin/Elements/EditScrips' for addition cvs server: use 'cvs commit' to add this file permanently $ cvs add ../rt/local/html/Admin/Elements/DeactivateGlobalScrips cvs server: scheduling file `../rt/local/html/Admin/Elements/DeactivateGlobalScrips' for addition cvs server: use 'cvs commit' to add this file permanently $ cvs add ../rt/local/html/Admin/Queues protocol error: `../rt/local/html/Admin' has too many .. OK. Right. So sometimes .. is fine, and sometimes it's not. Phase of the moon? Odd or even inode? Grrr. Nicholas Clark
From: Nicholas Clark Date: 10:43 on 11 Jul 2007 Subject: Re: CVS On Wed, Jul 11, 2007 at 10:38:58AM +0100, Nicholas Clark wrote: > $ cvs add ../rt/local/html/Admin/Elements/EditScrips > cvs server: scheduling file `../rt/local/html/Admin/Elements/EditScrips' for addition > cvs server: use 'cvs commit' to add this file permanently > $ cvs add ../rt/local/html/Admin/Elements/DeactivateGlobalScrips > cvs server: scheduling file `../rt/local/html/Admin/Elements/DeactivateGlobalScrips' for addition > cvs server: use 'cvs commit' to add this file permanently > $ cvs add ../rt/local/html/Admin/Queues > protocol error: `../rt/local/html/Admin' has too many .. > > > OK. Right. So sometimes .. is fine, and sometimes it's not. Phase of the > moon? Odd or even inode? Grrr. It got better: $ (cd ../rt && cvs add local/html/Admin/Queues) cvs [add aborted]: there is a version in local/html/Admin/Queues already So, did it fail or not? $ cvs add ../rt/local/html/Admin/Queues/Scrips.html cvs server: scheduling file `../rt/local/html/Admin/Queues/Scrips.html' for addition cvs server: use 'cvs commit' to add this file permanently I guess I find out when I attempt to commit. Or maybe only when I attempt a clean checkout somewhere else. Nicholas Clark
From: Nicholas Clark Date: 11:12 on 11 Jul 2007 Subject: Re: CVS On Wed, Jul 11, 2007 at 10:43:19AM +0100, Nicholas Clark wrote: > On Wed, Jul 11, 2007 at 10:38:58AM +0100, Nicholas Clark wrote: > $ (cd ../rt && cvs add local/html/Admin/Queues) > cvs [add aborted]: there is a version in local/html/Admin/Queues already > > So, did it fail or not? > > $ cvs add ../rt/local/html/Admin/Queues/Scrips.html > cvs server: scheduling file `../rt/local/html/Admin/Queues/Scrips.html' for addition > cvs server: use 'cvs commit' to add this file permanently > > I guess I find out when I attempt to commit. > Or maybe only when I attempt a clean checkout somewhere else. Nope, about 30 minutes later I discover that CVS diff is sufficient to discover that there is now state inconsistency between the repository and the local system: cvs server: failed to create lock directory for `/export/cvsroot/rt/local/html/Admin/Queues' (/export/cvsroot/rt/local/html/Admin/Queues/#cvs.lock): No such file or directory cvs server: failed to obtain dir lock in repository `/export/cvsroot/rt/local/html/Admin/Queues' Hateful. It looks like if the network protocol fails on CVS (for any reason) it can't recover. Nicholas Clark
From: A. Pagaltzis Date: 12:25 on 11 Jul 2007 Subject: Re: CVS * Nicholas Clark <nick@xxxx.xxx> [2007-07-11 12:20]: > Hateful. It's CVS, what did you expect? :-) Regards,
From: Aaron Crane Date: 12:28 on 11 Jul 2007 Subject: Re: CVS Nicholas Clark writes: > $ cvs add ../rt/local/html/Admin/Elements/DeactivateGlobalScrips > cvs server: scheduling file `../rt/local/html/Admin/Elements/DeactivateGlobalScrips' for addition > cvs server: use 'cvs commit' to add this file permanently > $ cvs add ../rt/local/html/Admin/Queues > protocol error: `../rt/local/html/Admin' has too many .. > > OK. Right. So sometimes .. is fine, and sometimes it's not. Phase of > the moon? Odd or even inode? Grrr. IIRC, it's because you're trying to add a directory. (It's still hateful, though.) That in turn is presumably because CVS doesn't really know what a directory is. (Which is even more hateful.)
From: Nicholas Clark Date: 12:36 on 11 Jul 2007 Subject: Re: CVS On Wed, Jul 11, 2007 at 12:28:43PM +0100, Aaron Crane wrote: > IIRC, it's because you're trying to add a directory. (It's still > hateful, though.) That in turn is presumably because CVS doesn't > really know what a directory is. (Which is even more hateful.) It was first written on CP/M? Or MS-DOS 1.0? Or MVS? Otherwise, I don't feel that it has an excuse. Nicholas Clark
From: Peter da Silva Date: 15:52 on 11 Jul 2007 Subject: Re: CVS Probably something obscurely fucked up in the repository for Queues. My #1 CVS hate: the file mode is saved when you add the file. If you change it, it will restore it to the original mode whenever you touch it... update, commit, doesn't matter. My other #1 CVS hate: no, you never want to rename a file, why would you want to do that?
Generated at 10:26 on 16 Apr 2008 by mariachi