Eclipse comes with support for teams in the form of CVS, Concurrent Versions System. CVS is an open source tool to keep track of every version of a set of files. The versions and files are kept in a repository that is able to respond to requests like, “ give me version 1.9 of file Abc.java ”.
Let’s assume that you are working on a file “ TestClass.java ”. When the file is new, it is added to the repository, which basically means that file becomes known to the repository, and from that point onwards, the repository will keep record of the file and all its versions. After adding the file, some editing is made, and then those edits are “ checked in ” to the repository, which instructs the repository to watch the difference, store the difference, and then make the checked in file the current/latest copy of the file. After you have checked in your changes, the file version beomces 1.1, and any other user that has access to the repository can update their local copy with this version 1.1 from the repository. With the time, the file continues to be edited and newer and newer version are checked in, Since the repository has the file and all the old versions of that file, you are table to ask the repository for “ TestClass.java 1.2 “ ( 1.2 is the version no), even when the latest version is 1.56.
(more…)