86 lines
2.1 KiB
Plaintext
86 lines
2.1 KiB
Plaintext
===========================
|
|
CVS Server Setup
|
|
==========================
|
|
|
|
|
|
creating a local repository
|
|
|
|
export CVSROOT=/path/to/where/cvs/is
|
|
cvs init
|
|
|
|
|
|
Creating a module
|
|
|
|
cvs import -m "commit message here" path_to_module module_name start
|
|
|
|
ie, for a dir called shell_scripts
|
|
|
|
cd shell_scripts
|
|
cvs import -m "importing shell scripts" shell_scripts shell_scripts start
|
|
|
|
|
|
Checking out that module to work on it.
|
|
|
|
If you are importing something that already exists, you probably
|
|
want to import it, then check it out again. This will check out the
|
|
source with all the appropriate control files and whatnot. So, make sure
|
|
you cp/mv the original before you check it out again.
|
|
|
|
mv shell_scripts shell_scripts.orig
|
|
cvs checkout shell_scripts
|
|
|
|
This will checkout (download) all the files currently
|
|
in that module of cvs.
|
|
|
|
Whee!
|
|
|
|
|
|
|
|
Remote server setup
|
|
|
|
There are two basic methods, rsh/ssh, and pserver. For most
|
|
Open Source projects, pserver seems pretty popular, but for cases
|
|
where confidentially is needed, the ssh method is probably preferred.
|
|
|
|
rsh/ssh
|
|
|
|
The advantage here is the possibility to use ssh, and the
|
|
the lack of a need to run a cvs server constantly.
|
|
|
|
The only trick is that the client needs to exist on the server,
|
|
and be able to login it normally. This is the primary disadvantage to this
|
|
setup.
|
|
|
|
|
|
pserver
|
|
|
|
Pserver setup uses a different passwd file than standard logins,
|
|
so it is possible to give people login access to a cvs server without
|
|
any shell or login privilege.
|
|
|
|
The hard part is you create the repo, then add any user entries
|
|
to $CVSROOT/CVSROOT/passwd in the form:
|
|
|
|
username:passwd_string:user_to_run_as
|
|
|
|
passwd_string is the crypt()'ed passwd, not the plain text passwd.
|
|
|
|
an easy way to do this is:
|
|
|
|
perl -e "print crypt('passwd','a_salt_string');"
|
|
|
|
|
|
Probably want to create a user for cvs particularly.
|
|
|
|
You also need to add the cvs pserver line to /etc/inetd.conf:
|
|
|
|
2401 stream tcp nowait cvs /usr/bin/cvs cvs --allow-root=/path/to/cvsroot pserver
|
|
|
|
Generally want to setup a cvs user, and a chroot environment for running
|
|
cvs in. Start with the one for FTP, and work from there.
|
|
|
|
|
|
|
|
|
|
|