10.4 Freeware SCM tools

 < Day Day Up > 



In addition to commercial SCM tools, there is a large number of free SCM tools. It is interesting to note that two SCM tools dominate in free software market: RCS and CVS. We give a short description of them and a list of other free SCM tools.

10.4.1 RCS

RCS is one of the oldest SCM tools. It is very simple and includes rudimentary SCM functions applied on files. The simplicity of RCS is outstanding and the reason for its widespread use. RCS is also used as a basic tool for many other SCM tools. Even more interesting is that the principles introduced in RCS (and partially previously SCCS) are still applied in other, more advanced SCM tools.

RCS is file oriented, and the SCM repository is simply a directory that contains versioned files. One versioned file contains one or several versions of that file. Baselines are achieved by setting a label on specific versions of the files. RCS includes difference and merge functions, which can be used by users and by check-in and check-out commands.

The main features of RCS are:

  • Contains basic SCM functions (versioning, check in, check out, baselines, difference, and merge);

  • SCM repository is the RCS underlying directory;

  • Simple and easy to use;

  • Practical for using on individual bases or in small groups;

  • Can be used as a base for building more sophisticated tools.

10.4.2 CVS

CVS uses RCS as a basic SCM tool. However, in contrast with RCS, it manages directory structures. All files in a directory tree structure can be checked out or synchronized with working versions of files. CVS supports multiuser projects directly, as it uses a server-client architecture. A TCP/IP connection is used for the client-server communication. There are many CVS clients, for example, WinCVS (www.wincvs.org), jCVS (www.jcvs.org), command-line interfaces, and emacs commands. In the same way as RCS, CVS is a widespread tool because of its simplicity and flexibility.

The main features of CVS are:

  • Contains basic SCM functions (versioning, check in, check out, baselines, difference, and merge);

  • It is a client-server application in which the server manages the file repository;

  • Enables parallel development with concurrent changes of files;

  • Includes monitoring of files—operations (e.g., check in and check out) on the specified files are reported to the users;

  • Simple and efficient;

  • Practical for use in small distributed groups.

10.4.3 List of free SCM tools

The first SCM tools were developed by researchers, which has an implication: Many SCM tools are freely available on the market. There are, however, different categories of free software [11] (e.g., public domain free software [11], open source [12], and free software [13, 14]), which treat the software ownership, maintenance, and support in different ways.

Table 10.3 lists some of the free SCM tools available on the market.

Table 10.3: SCM Tool Free Software

SCM Tool

Web Site

Aegis

http://aegis.sourceforge.net

CERN—CMZ

www.info.cern.ch/cmz

CVS

www.cvshome.org

DVS

www.cs.colorado.edu/serl/cm/dvs.html

Inversion

inversion.tigris.org

JCVS

www.jcvs.org

Keep-It

www.keep-it.com

ODE

www.accurev.com/ode/index.html

PRCS

http://prcs.sourceforge.net

RCS

www.gnu.org/software/rcs/rcs.html

SCCS (free implementations)

www.cvshome.org/cyclic/cyclic-pages/sccs.html

TCCS

www.oreilly.com/homepages/tccs

TkCVS

www.twobarleycorns.net/tkcvs.html



 < Day Day Up > 



Implementing and Integraing Product Data Management and Software Configuration[... ]ement
Implementing and Integrating Product Data Management and Software Configuration Management (Artech House Computing Library)
ISBN: 1580534988
EAN: 2147483647
Year: 2006
Pages: 122

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net