App-Context
view release on metacpan or search on metacpan
lib/App/adminguide/cvs.pod view on Meta::CPAN
cd src
cvs co CVSROOT
cd CVSROOT
touch passwd
cvs add passwd
cvs update
cvs commit -m "new" passwd
vi checkoutlist
# add "passwd" as the last line
cvs commit -m "added passwd to list of CVSROOT files" checkoutlist
Then exit as the "cvs" user.
exit
=head2 Installing cvspasswd and adding users
I got it from here.
http://www.sugoi.org/bits/download/cvspasswd
But I put it in a distribution on CPAN called App-admin.
So you can install it this way.
perl -MCPAN -e "install App-admin"
In any case, make sure it is in your path (i.e. /usr/local/bin).
Then add users.
cvspasswd joe joespw7
cvspasswd mike m1k31sgr3a7
cvspasswd nellie whoa_
=head2 Configure xinetd
On Solaris, I just needed to add a line to /etc/inetd.conf which
looked like this. (This configures "inetd", the internetworking daemon.)
cvspserver stream tcp nowait root /usr/bin/cvs cvs --allow-root=/usr/mycompany/cvs pserver
However, on Linux I have to configure xinetd (an enhanced version of
"inetd").
cd /etc/xinetd.d
vi cvs
I put the following in the file, with my server's actual
IP address instead of "10.10.10.10".
service cvspserver
{
disable = no
socket_type = stream
wait = no
user = cvs
group = cvs
log_type = FILE /var/log/cvspserver
protocol = tcp
env = '$HOME=/usr/mycompany/cvs'
bind = 10.10.10.10
log_on_failure += USERID
port = 2401
server = /usr/bin/cvs
server_args = -f --allow-root=/usr/mycompany/cvs pserver
}
Then I restart xinetd.
pkill -HUP xinetd
=head2 Verification
Then I went to another server on the network.
cd ~
mkdir src
cd src
cvs -d :pserver:mike@cvshost:/usr/mycompany/cvs login
cvs -d :pserver:mike@cvshost:/usr/mycompany/cvs co CVSROOT
# it worked great, so I can remove it ...
rm -rf CVSROOT
=head2 Moving the CVS data
I now had to move the data from my old CVS server.
ssh oldcvshost
su -
cd /usr/mycompany/cvs
find project1 project2 project3 -print | cpio -ocv | gzip > cvs.cpio.gz
scp cvs.cpio.gz mike@cvshost:.
ssh mike@cvshost
su -
cd /usr/mycompany/cvs
mv ~mike/cvs.cpio.gz .
gunzip < cvs.cpio.gz | cpio -idcuvm
( run in 1.071 second using v1.01-cache-2.11-cpan-2398b32b56e )