Releases
Download latest
All releases
Installation
SimpleCVS
Perl
XS Checksum module
Reference
Configuration files
   Server
   Client
   Web browser
File structure
Startup options
About SimpleCVS
Authors
Sourceforge: project
Sourceforge: homepage
Version changes



SourceForge.net Logo

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.