Installation > SimpleCVS
First of all, you need to have Perl installed. If you're at Unix/Linux/Mac OS X, it's most likely Perl allready is installed. To test this, open a terminal window and type perl -e 'print "Perl is here!\n"' . If you see the line "Perl is here!", then it's all right, otherwise, you will have to install Perl before going further down this page.
Step 1 - do the unzipp'n
To install, just unzip the package in some directory.
Setup the file permissions
For Unix, set the chmod 775 for the files *.pl:
$> chmod 755 *.pl
For Windows, use the *.bat files:
$> client.bat
Step 2 - setup
Where's the config?
Server, client and web browser uses their own configuration files. Those are located in <SimpleCVS>/conf/ and have very logic names. ;)
Concept of (Simple)CVS
The basic idéa/concept is that all members of a project (commonly programming) works on their local copies. They then run the "syncronizer" (client) to upload and/or download new files to and from the server. So, you maybe only run the client once or twice a day. This way, you get the other participants daily work and the main project directory (root).
Make some folders
This is not nececary, but will get you going if you're new to the concept of CVS.
Start by creating a folder somewhere on your system, where local projects will be worked on. For example /users/joe/local_cvs (or c:\myfolder\local_cvs on Win.)
Create a sample project folder in that directory. For example /joe/projects/myproject or c:\joe\projects\myproject .
Let's create the server directories. Go to the folder in wich you installed SimpleCVS. For example /var/SimpleCVS or c:\SimpleCVS . Now, there is allready a directory created for your convinience, so we'll stick to that one for now. Wer'e now in something like /var/SimpleCVS/CVSROOT . You'll find a directory called myproject . This is a project directory. This must match the name of the directory on your local copy. In the project directory, you need to add one diretory for each user and one root. (In the root drectory, the good/selected files of the project will be maintained.)
Example: Local directory for "My Project":
/joe/projects/myproject/root , /joe/projects/myproject/joe and /joe/projects/myproject/garry , where "garry" i another user.
Server directory:
/var/SimpleCVS/CVSROOT/myproject/root , /var/SimpleCVS/CVSROOT/myproject/joe and /var/SimpleCVS/CVSROOT/myproject/garry
Configuration files
Now, open the client configuration file (conf/client.txt ) and change the predefined project description to match your local directory:
## Projects list:
project.myproject: /joe/projects/myproject
And add or change the user to match your project:
## Users list:
user.joe.pass: verysecret
user.joe.project: myproject
Open the server configuration file (conf/server.txt ) and change the predefined project description to match your server's directory:
## Projects list:
project.myproject: /var/SimpleCVS/CVSROOT/myproject
And add or change the user(s) to match your project:
## Users list:
user.joe.pass: verysecret
user.joe.project: myproject
user.garry.pass: notsosecret
user.garry.project: myproject
Install the modules and/or run a test:
$> perl simple-cvs-srv.pl
$> perl simple-cvs-clt.pl
Unix/Linux/Mac: You'll have to run them in two different shell instances or press CTRL+Z after the server is started. Press CTRL+C to quit a program.
Windows: You'll have to run them in two different terminal windows.
Step 2b - running the web server
The Web Browse was created to access your local files and manage the tags. If you configure it to handle with the server (server config file) you browse as ROOT and can move files from other users to the ROOT dir.
$> perl simple-cvs-web.pl
Step 3 - modules
Install good vibe modules
There are two CPAN-modules wich both improve the speed incredibly. To use these, you must install them. (compile and/or add to perl lib-base)
Please note that you DO NOT NEED to install these, they just give you a speedier experience.
XS - GMP::CHKSUM
Since version 1.1, SimpleCVS uses the Perl module GMP::CHKSUM to improve speed. This module is used to create the ident key (chksum) of a file. But with the extension of the XS sytem dependent module, the speed is improved with an incredible rate of 15-20 times!
(The GMP::CHKSUM module still works without XS, but will be very slow!)
To install this, click here to read further.
Compress::Zlib
If possible, install the CPAN extension Compress::Zlib to compress the protocol between hosts and save bandwidth. The installation procedure is almost the same as with XS.
|