Filetonic Filetonic logo print version

To find an exe file, dll file or file extension visit the library »

 

What is CVS - Concurrent Versions System?

Is your computer an Open Invitation for HACKERS? Download free version of Sparktrust Inspector to identify vulnerabilities and problems on your computer (and even your WEBSITES)!

Concurrent Versions System Defined

CVS is a computing term that stands for "Concurrent Versions System".

CVS is a source control tool (also known as revision control tool) that has the ability to track changes and revisions made by groups of developers that happen to be working on files at the same time. This allows developers to stay up to date with the most current version of the file. This file revision system was the precursor to subversion which is arguably the most well-known open source version control system available today.

Subversion software addresses many of the issues inherent with CVS.

When using CVS, making a commitment to a set of changes will require each file to be modified separately. In contrast, subversion keeps track of different revisions in real time. With this subversion structure, a revision is basically a representative snapshot of the exact repository structure at any given point in time.

Updating a repository is akin to updating a relational database because either all changes will be updated at the same time or none of the content will be updated when there is a conflict.

Subversion Control Basics

Following is an introduction to the basics of subversion control. For our purposes, setting up your version control software on a Windows or Ubuntu server is out of the scope this article. However, both Linux and Windows commands will be described.

Two different storage systems exist for subversion repositories: Berkeley DB database and FSFS, which is a built on a system of flat files.

1 - Create a repository, using the svnadmin command.

This creates an FSFS repository by default:
 (Linux) $svnadmin create /home/vietma/svn_repository/dev_repos
 (Windows) C:>svnadmin create D:svn_repositorydev_repos

As an alternative, you may use the --fs-type option for specifying a Berkeley DB database:

Is your computer an Open Invitation for HACKERS? Download free version of Sparktrust Inspector to identify vulnerabilities and problems on your computer (and even your WEBSITES)!

 (Linux) $svnadmin create --fs-type bdb /home/vietma/svn_repository/dev_repos

2 -  Create a Java project.

Maven 2 Apache is a good way to do this. If you do not have Apache Maven 2, it can be downloaded straight from the Apache website into any Windows directory that you like. For those of you using Linux Ubuntu, the option to use Synaptic Package Manager is available to guide you with the Maven 2 installation.

3 -  Create a temporary folder that will hold the newly created Java project:

 (Windows) D:tmp>mvn archetype:create -DgroupId=com.example.myproject -DartifactId=myproject

 (Linux) $ cd /home/vietma/tmp
  $ mvn archetype :create -DgroupId=com.test.testproject -DartifactId=testproject

4 -  Begin importing the new directory into the Subversion project:

 (Linux) $svn import testproject file:///home/vietma/svn_repository/dev_repos/testproject/trunk -m "Import of testproject"

 (Windows) D:tmp>svn import myproject file:///d:/svn_repository/dev_repos/testproject/trunk -m "Import of testproject"

5 -  Delete the temporary project testproject from the directory /home/vietma/tmp or D:tmp
6 - Check out your Subversion project using source code on your command line:

 (Linux) $ cd /home/vietma/projects
  $ svn checkout file:///home/vietma/svn_repository/dev_repos/testproject/trunk testproject
 (Windows) D:projects>svn checkout file:///d:/svn_repository/dev_repos/testproject/trunk testproject

The option is also available to use TortoiseSVN to check out source code instead of using the command line.

Related posts

Is your computer an Open Invitation for HACKERS? Download free version of Sparktrust Inspector to identify vulnerabilities and problems on your computer (and even your WEBSITES)!

You can leave a comment, or trackback from your own site.

Leave a Reply

  •