These steps take an existing OpenACS directory and add it to a CVS repository..
Create and set permissions on a subdirectory in the local cvs repository.
[root@yourserver root]# mkdir /cvsroot/service0
[root@yourserver root]# chown service0.web /cvsroot/service0
[root@yourserver root]#
mkdir /cvsroot/service0
chown service0.web /cvsroot/service0
Add the repository location to the user environment.
[root@yourserver root]# su - service0
[service0@yourserver service0]$ emacs .bashrc
Put this string into /home/service0/.bashrc:
export CVSROOT=/cvsroot
[service0@yourserver service0]$ exit logout [root@yourserver root]#
Import all files into cvs. In order to work on files with source control, the files must be checked out from cvs. So we will import, move aside, and then check out all of the files. In the cvs import command, service0 refers to the cvs repository to use; it uses the CVSROOT plus this string, i.e. /cvsroot/service0. "OpenACS" is the vendor tag, and "openacs-5-0-0a1" is the release tag. These tags will be useful in upgrading and branching. -m sets the version comment.
[root@yourserver root]# su - service0
[service0@yourserver service0]$ cd /web/service0
[service0@yourserver service0]$ cvs import -m "initial install" service0 OpenACS openacs-5-0-0a1
N service0/license.txt
N service0/readme.txt
(many lines omitted)
N service0/www/SYSTEM/flush-memoized-statement.tcl
No conflicts created by this import
[service0@yourserver service0]$
su - service0
cd /web/service0
cvs import -m "initial install" service0 OpenACS openacs-5-0-0a1
Move the original directory to a temporary location, and check out the cvs repository in its place. If the service starts correctly, come back and remove the temporary copy of the uploaded files.
[service0@yourserver service0]$ cd ..
[service0@yourserver web]$ mv service0 service0.orig
[service0@yourserver web]$ cvs checkout service0
cvs checkout: Updating service0
U service0/license.txt
(many lines omitted)
U service0/www/SYSTEM/dbtest.tcl
U service0/www/SYSTEM/flush-memoized-statement.tcl
[service0@yourserver web]$ exit
logout
[root@yourserver web]#
cd ..
mv service0 service0.orig
cvs checkout service0
exit