Concurrent Version System (CVS)

Varun Guleria
3 min readJul 25, 2018

--

Versioning Control System

Most of us might be familiar with Git. For those who are not,

From the wiki

Git (/ɡɪt/[7]) is a version control system for tracking changes in computer files and coordinating work on those files among multiple people. It is primarily used for source code management in software development,[8] but it can be used to keep track of changes in any set of files.”

Concurrent Version System or simply CVS is a free client-server revision control system which manages the version of your files on server. It keeps track of all your work with changes so that other developers could also share the changes made by you.

The commands are similar to Git but here in CVS we do not have pull or push. Let’s get started to make it more clear.

cvs add filename
This command is used to add a new file to the server. But the file currently is still in a stage which will not be available to other developers. Suppose you have multiple new files in a folder, cvs add * is used.

cvs commit
To finally commit a added file or any other file that has already been added to the server cvs commit filename is used. To add a comment while committing a file, we use cvs commit -m ‘your msg’ filename. Here -m signify message that user wants to add while committing a file.

cvs diff
If you have modified a file and want to see the difference between your changes with committed changes, you can use cvs diff filename. Now this command gives the output on terminal itself. If you want to redirect it to a file, you can use cvs diff filename > vi x;. Here “>” is for redirection and
x” is a file where you will see the difference. If you want to ignore white space or blank lines in the diff, type cvs diff -bwB filename > vi x;

cvs log
If a user want to know what all commit has been done to a file, command for that is cvs log filename. The result of this will be a list of all the changes made to this file with date, filename, message and version. So if user want to see a diff between versions, command for that is cvs diff -r1.0 -r1.4 filename. Here “-r” signifies revision and “1.0” or “1.4” are version of same file that is committed.

cvs update
This command is used when you want to update your file. When a user type command, cvs update will get you all the latest files from the main repository. If you have any changes in one of the file, cvs update will show you a list with “M” filename that has been modified. Here “M” signifies modified. If you have any added file but not committed, it will show “A” filename which signifies Added.

cvs checkout
Now you want to get all files and folder at one go from the repository or in simple words you want a copy of project on your server, you can use cvs checkout on the folder.

That’s all for now. Will keep updating the article as I explore. Hit the clap icon if you liked the article. Thanks :) :)

--

--