CVS: Using CVS
Introduction
CVS, an acronym for Concurrent Versions System, is free software (GPL license) for version management, successor to SCCS. Although it is still widely used in the open source software domain, it is now obsolete with the arrival of its successor Subversion. Since it helps sources converge towards the same destination, we say that CVS manages concurrent versions. It can function both in command line mode and through a graphical interface. It consists of client modules and one or more server modules for exchange areas.
It's worth noting that there are also decentralized software options like Bazaar, Darcs, Git, or Monotone, all under Open Source licenses.
Among the most popular graphical interfaces, notable ones include Cervisia for Linux and TortoiseCVS for Windows.
Prerequisites
For prerequisites, you need a few things in your environment. I strongly recommend adding them to your shell load file (e.g., ~/.bashrc, ~/.zshrc):
In the first line, we need to indicate the transport method for CVS. In this case, it's SSH. For the second, we indicate the hostname where the CVS server is located, as well as the folder where the repository is located.
Reload your shell and you're good to go.
Usage
Projects
- Downloading a project:
- Updating a project after updates (this does not upload our updates):
- Creating a new project (make sure you're in the concerned project first!):
- Destroying a project:
Adding Files
- Adding files:
- Updating files:
- Updating files with comments at the same time:
Removing Files
To remove files, you need to:
- Delete the file on your local machine:
- Remove the file from cvs:
- Commit the changes:
Identification
- View differences between server modifications and your own: