[Cvsnt] New to CVS....

Rajan Karunakaran rkaran at hotmail.com
Wed May 29 03:18:49 BST 2002


I am no expert by any means, but have been using the WinCVS client against a
CVS server running on a Solaris box on and off for a couple of years.

The basic concept is this:

You have a CVS repository (usually) on a server that is accessible to all
developers.  This holds the 'master' of all your development files - source
code, documentation, design models (UML diagrams and other forms of visual
representation of design), etc.

Each developer has a client in the form of WinCVS (on Windows), TortoiseCVS
(which I discovered yesterday and liked immensely) or just the plain cvs.exe
(again on a Windows client).  The developer uses the CVS client and logs
onto the CVS repository and 'checks out' (as in checking out of a hotel room
- bad analogy, but you get the picture) the module that he wants to work on
into a local directory on his machine (this checked out module will retain
the exact same directory structure as the module on the CVS server).  He
keeps working, building, testing, etc. and once satisfied with his work,
'checks in' his stable version of the code.  The CVS server stamps it with a
revision number, a date stamp and, if not supplied, prompts you the
developer for a small explanation of the revisions.

The advantage of this system is that multiple developers can work on the
same project (not necessarily the same piece of code, but even that is
possible) at the same time.  Usually, CVS is best at handling text files,
like source code.

Suppose someone has checked out the same module you have and worked on the
same file that you worked on.  Suppose the other developer checked his
revisions back in before you did.  When you check your version in, and if
changes were made to parts other than those the other person worked on, CVS
'merges' the changes.  If, however, you and he modified the same part of the
code, the server will tell you of it.  Then it is up to you to merge the
changes.  My understanding is that if the client is also on a Unix box, it
locally creates a conflict file tagged with your version and his version,
which you can then correct or merge.  The windows version does not create
this file, as far as I know (probably because the file name starts with a
#).  Of course, you can avoid all this hassle by locking the file that you
check out.  The flip side is that you have prevented others from developing
the file that you have locked (possibly for days on end).  Microsoft's
Visual Source Safe works this way (and my understanding is that you are

The options available to you are to have a CVS server running on any of the
Unixes, Windows NT/2000 or the Mac and clients on Windows or Unix or Mac.
You can have a GUI or command line client.

This is where you can get all the info you need plus links to other CVSs:

http://www.cvshome.org/

The windows server is available at:

http://www.cvsnt.org/  (I understand that this has been ported back to Unix)

The clients are available at:
http://wincvs.org/

The documentation is also available at the sites mentioned above.

If you want to make CVS SCC compliant (emulate behaviour of MS Visual Source
Safe), you can install Jalindi-Igloo (link found at wincvs.org)

Rajan.


_________________________________________________________________
Envoyez et recevez des messages Hotmail sur votre périphérique mobile :
http://mobile.msn.com


_______________________________________________
Cvsnt mailing list
Cvsnt at cvsnt.org
http://www.cvsnt.org/cgi-bin/mailman/listinfo/cvsnt




More information about the cvsnt mailing list