Essential CVS
By: Jennifer Vesperman
Review Copyright 2005 Noel Davis
CVS (Concurrent Versions System) is a popular open source version control system. A version control system is used to manage changes to files. Many different types of files are managed with CVS including: source code, web content, documentation, and configuration files. It can be especially useful when multiple users are changing files. It has many advanced features such as: facilities for merging multiple users changes, marking a set of files with so that they can be retrieved together, backing out changes to a file, and many more.
I have used CVS for more than five years to manage a personal repository of PHP scripts and other files. In most cases CVS has been easy to use, but I tend to do very simple tasks on a day to day basis. Most of the time the only CVS commands I use are 'cvs com' and 'cvs upd'. As a result of this when I need to use the many of the other features of CVS I need to look up the command syntax to avoid any mistakes. When I looked around at the available CVS books I was looking for a reference book that also would explain areas of CVS that I had not been taking advantage of. Essential CVS was a perfect fit for my problem.
The goal of Essential CVS is to be an easy to follow reference and tutorial to CVS and it succeeds admirably. The book is written in a clear and concise style that is understandable and complete without covering so much detail that it is hard to digest.
The author of Essential CVS Jennifer Vesperman is a programmer and system administrator and has written the Linux Documentation Project, Linux.com, and the O'Reilly Network.
The book uses Unix shell commands for the CVS command examples. But there is an appendix in the back that details available graphical interfaces to CVS including: gCVS, WinCVS, MacCVS, jCVS, SmartCVS, and others.
I liked the coverage of Tagging in the chapter on Tagging and Branching. It was an area that I had only an elementary understanding of and the book did a very good job of explaining it.
Through out the book small notes are added that either point out a special hint to help the reader or point out an easy to fall into trap. These are marked respectively by a small box with animal tracks across it or by a box with a animal trap inside it.
If your wondering what the animal on the cover is it's a Bobac. Bobacs are a type of Marmot that lives in Russia, Kazakhstan, and central Europe. Other examples of Marmots are Woodchucks and Prairie Dogs.
Essential CVS is a good addition to a Unix Admin's book shelf. It succeeds as both a tutorial to CVS and as a reference to CVS commands and options. Anyone who needs to use CVS, or who must administer a CVS repository for others will find this book useful.
Table of Contents
Preface
Part I. Introduction
1. What Is CVS?
What Is a Versioning System?
CVS in the Field
2. CVS Quickstart Guide
Installing CVS
Building Your First Repository
Importing Projects
Accessing Remote Repositories
Checking Out Files
Committing Changes
Updating Sandboxes
Adding Files
Removing Files
Quick Tips for Success
Part II. Using CVS
3. Basic Use of CVS
General Information
Sandboxes and Repositories
Committing Changes to the Repository
Checking File Status
Updating the Sandbox Files from the Repository
Adding Files to the Repository
Removing Files from the Repository
Moving Files or Directories
Releasing a Sandbox
Keywords
Binary Files and Wrappers
Specifying Default Command Options
4. Tagging and Branching
Tagging
Stickiness
Branching
Branching Strategies
5. Multiple Users
Using Simultaneous Development
Watching a File
Reserving Files
Comparing File Revisions
Displaying Recent Changes
Displaying File History
Part III. CVS Administration
6. Repository Management
Creating a Repository
Deleting a Repository
Securing Your Projects
Repository Structure
CVSROOT Files
Server Environment Variables
Backing Up a Repository
Editing a Repository
Sandbox Structure
Client Environment Variables
Exit Status
7. Project Management
Creating a Project
Distributing Files
Running Scripts
Interfacing with External Programs
Tools
Strategies and Practices
8. Remote Repositories
Specifying Repository Paths
The local Access Method
The ext and server Access Methods
The fork Access Method
The gserver Access Method
The kserver Access Method
The pserver Access Method
Using inetd with gserver, kserver, and pserver
9. Troubleshooting
General Troubleshooting Techniques
Connectivity Problems
Filename Problems
Line-Ending Problems
Permission Problems
Lock Files
Part IV. Reference
10. Command Reference
CVS Command-Line Options
CVS Commands
11. Miscellaneous Topics Reference
Administrative Files
CVSROOT Files
CVSROOT Variables
Dates
Environment Variables
Keywords and Keyword Modes
Pattern Matching
Repository Access Methods
Part V. Appendixes
A. Clients and Operating Systems
B. Administrator's Tools
Index
|
Buy from Barnes & Noble:
  Essential CVS
|
|