CVS is a acronym of Concurrent Version System. It's a complete free Version System and it's very used in TinyCOBOL project.
With it, developers and users get the code of TinyCOBOL and made your own compilations.
Developers can access the CVS with write access and make changes in the compiler code.
Users can access the CVS with anonymous user and get the code.
A great book about CVS are stored in cvsbook home.
The TinyCOBOL project does have some CVS repositories, used as follows:
You can select one repository by it name or select all repositories using a period (.).
cvs checkout development (You will get the development repository).
cvs checkout development samples (You will get the development and samples repositories)
cvs checkout . (You will get all repositories)
CVS require a file called .cvspass, to check if the user are logged in or not in the CVS repository. In the first time that you access the CVS server, you will need of create a blank .cvspass file.
To create this file just type this:
echo " " > .cvspass
The .cvspass must be added in the $HOME directory, where $HOME is a environment variable.
In Win32 environments, don't use the copy con program to create the .cvspass file because the CVS don't make the authentication of the .cvspass file. Use the edit editor or the echo command to create the .cvspass file.
echo "#!/bin/sh" > cvs-setup.sh echo "export CVSROOT=:pserver:email@example.com:/cvsroot/tiny-cobol" >> cvs-setup.shDOS environment:
echo "@echo off" > cvs-setup.bat echo "set HOME=." >> cvs-setup.bat echo "set CVSROOT=:pserver:firstname.lastname@example.org:/cvsroot/tiny-cobol" >> cvs-setup.bat
echo "#!/bin/sh" > cvs-setup.sh echo "export CVS_RSH=ssh" >> cvs-setup.sh echo "export CVSROOT=:ext:email@example.com:/cvsroot/tiny-cobol" >> cvs-setup.shDOS environment:
echo "@echo off" > cvs-setup.bat echo "set HOME=." >> cvs-setup.bat echo "set CVS_RSH=ssh" >> cvs-setup.bat echo "set CVSROOT=:ext:firstname.lastname@example.org:/cvsroot/tiny-cobol" >> cvs-setup.bat
Every time that you need to get the TC code from CVS, start the batch or script file before.
cvs checkout [repositoryname]or
cvs co [repositoryname]
Do exist some important differences between get the code in anonymous mode and get the code in developer mode.
This diferences are:
So, in the developer mode you won't need of use the commands login and logout because every command in developer mode will login in CVS server, check the user permissions, make the command required by the user and after logout from the CVS server.
cvs checkout [repositoryname]
The cvs2cl tool is a acronym of CVS to ChangeLog and it's just a perl script that get a CVS log file. It's very useful to know more informations about the last changes added by the developers of the project.
You can get it from Karl Fogel's web site
$ cd [repositoryname] $ cvs2cl -r