For Developers: Working with the Subversion / Mantis combination at Seblin

I operate all programming projects on the popular bug tracking system Mantis [^]. I use Mantis to track project goals, versions, etc. etc.

Using Mantis is the same as using any bug tracking system; any programmer would be familiar with it.

I also use Subversion [^], a well-known version tracker, to handle version control (especially on projects where multiple developers participate). Subversion is extremely fast, powerful, and relatively easy to use.

For developers using Windows, I require that you use Tortoise SVN (an easy to use windows subversion client). Get it free here: http://tortoisesvn.tigris.org/ Tortoise SVN is quick to install and get running, if you have problems just refer to the Tortoise page.

- Using SVN for the first time (windows)
Download and install http://tortoisesvn.net/downloads
Create new directory, right-click on it, go to "SVN Checkout" (make sure directory is EMPTY)
URL of repository: svn://seblin.com/{repository name}
Checkout Direcotry: This is pre-filled with the directory you just right-clicked on

Access the Seblin SVN server here (use the username and password you were provided with directly):

svn://seblin.com/{repository name}/trunk/

All SVN projects are ordered into the standard directory structure:

/branches
/tags
/trunk <- the main development application is found here (that's why you generally connect directly to /trunk as above)

Once you have checked out the code, your day to day work schedule should be:

- Day to Day Work
Do an SVN checkout to get a working copy of the code
Fix bugs as they are assigned to you, and commit changed files back to the repository

Remember to always check out the code before you start! This helps prevent conflicts when you commit changes.

Once you've done your work, you need to commit your changes back to the SVN server:

- Committing Changes
The following items are REQUIRED when committing changes:
- A commit message, at least 20 characters
- A Mantis bug and Mantis bug ID

Example:
bug 1:This is a sample commit message, notice the format... "bug [bug number]:[description]"
- Mantis Bug ID must be valid.
- Bug must be assigned to the user making the commit
- Bug must be in 'ASSIGNED' or 'REOPENED' states
If the above are not as they should be, your commit will be REFUSED.

This helps organize the work schedule. It encourages you to commit files relevant to the tickets that are assigned to you. Please note that by committing code like this, the bug is automatically updated with your commit message and all the files you are committing.

Always try to only commit the files relevant to the ticket you are referencing with the "Mantis Bug ID".

---