Introduction

CVS makes collaboration on a software project easier. There is one CVS server (ours is hosted by SourceForge) and each developer acts as a client to this server. CVS keeps a history of all changes to each file, this way changes can be rolled back.

Please note that the CVS contains the most recent source code, which might be unstable. See the download releases if you want stable source code.

More information about CVS can be found in this free book about CVS.

Checkout the source

First you must appoint a local directory, which will be held in sync with the remote directory on the CVS server. This process is called a CVS checkout. Ussually you only do a checkout once during an entire project, unless you switch computer.

In IntelliJ, open File/Checkout from CVS... and configure a CVS repository to :ssh:SF_USERNAME@cvs.sourceforge.net:/cvsroot/simplegamenet using your SourceForge username. You will be prompted for your SF password on connection. Check out the simplegamenet directory to a directory on your local hard drive preferable with the same name. Always mark the option prune empty directories, also later when you update.

Directory overview

Take a look at the new directory in your file explorer.

You will find a file called project.xml in SimpleGameNet's root. This is the main configuration file for Maven. Maven also uses maven.xml, project.properties and build.properties.

You will also find a directory called CVS in every directory. Do not touch that directory, CVS requires it to synchronize. IntelliJ won't show it. In some directories you 'll find a file called .cvsignore, also used by CVS.

Local files and directories

Local Files And Directories are files and directories that you do not whish to share with other developers. Mostly these are person specific files, personal notes and IDE configuration files. Each of these files is added to the list in the file .cvsignore in its directory. The file .cvsignore isn't local: it is committed to CVS.

Make a directory simplegamenet/local: it will not be committed into CVS. Feel free to add as much notes, junk, etc as you want in that directory. Do not add anything

Maven requires some personal settings in a file called build.properties. Copy the non-local file example.build.properties as build.properties (which will be local). Open build.properties and adjust its settings as much as you can understand.