Discussion:
CVS Entries
Jonathan Rosenberg
2011-08-24 14:44:36 UTC
Permalink
All;

I am really very new to CVS (a day or two), and have an issue. I inherited
a web environment, and they use CVS (Version 1.11.22) to get the perl code
to the web servers (in /var/www/cgi-bin/<sitename>) form the staging
server. The trouble is that yesterday when the developer updated the code
on the web server, he got messages saying the files were no longer in the
repository. It then deleted them from the web server.

We rsynced form the staging server to the web servers to get the site going
again. After that, I tried to do a "cvs update -Pd -r version application",
but it said that the files were in the way (I don't have the exact error for
that). To fix that, I had to delete all the files completely (leaving the
CVS directory only), and then run the cvs update again. Then I was able to
sync the files.

When I tried to run the cvs update a bit later for another new version
however, I get this error:

working in /var/www/cgi-bin
cvs update: cannot open CVS/Entries for reading: No such file or directory
cvs [update aborted]: no repository


I have not been able to figure out how to fix this.

Some further information to help out. There is another CVS folder in the
/var/www/cgi-bin directory that is working just fine. It comes from the
same source server too.

Thank you for any help you can provide.

Jon
Arthur Barrett
2011-08-25 07:02:51 UTC
Permalink
Jonathan,

I personally don't think that checking out to web servers is a great
idea. To make 'update' etc work you need the 'CVS' folders and I'm not
sure you really want to be serving them up (though I guess you could
configure apache to refuse to serve them).

Either your CVS directories have become corrupted, or the web server has
got them locked open (for caching? Or for indexing?), preventing the cvs
client from opening them...

Deleting the lot and doing a clean checkout is probably a good idea.

I recommend changing the process to use:

cd /tmp
mkdir junk
cvs export blah
rsync blah ***@servername1:/var/www/cgi-bin/blah
cvs rtag -F servername1 blah
rsync blah ***@servername2:/var/www/cgi-bin/blah
cvs rtag -F servername2 blah

The rsync will ensure that only files that are different actually get
copied. If you are doing this 'locally' then you'll need some switches
to tell rsync to compare the content (not just the date stamp) of the
files before copying...

The rtag will ensure that you can just query the repository to find what
versions of each file are currently deployed on which server.

What I've described above is basically a very simple case of what our RM
product does on windows:
http://march-hare.com/cvsnt/features/relmgr/

Regards,


Arthur
-----Original Message-----
org] On Behalf Of Jonathan Rosenberg
Sent: Thursday, 25 August 2011 12:45 AM
Subject: CVS Entries
All;
I am really very new to CVS (a day or two), and have an
issue. I inherited
a web environment, and they use CVS (Version 1.11.22) to get
the perl code
to the web servers (in /var/www/cgi-bin/<sitename>) form the staging
server. The trouble is that yesterday when the developer
updated the code
on the web server, he got messages saying the files were no
longer in the
repository. It then deleted them from the web server.
We rsynced form the staging server to the web servers to get
the site going
again. After that, I tried to do a "cvs update -Pd -r
version application",
but it said that the files were in the way (I don't have the
exact error for
that). To fix that, I had to delete all the files completely
(leaving the
CVS directory only), and then run the cvs update again. Then
I was able to
sync the files.
When I tried to run the cvs update a bit later for another new version
working in /var/www/cgi-bin
cvs update: cannot open CVS/Entries for reading: No such file
or directory
cvs [update aborted]: no repository
I have not been able to figure out how to fix this.
Some further information to help out. There is another CVS
folder in the
/var/www/cgi-bin directory that is working just fine. It
comes from the
same source server too.
Thank you for any help you can provide.
Jon
Loading...