Speakers Bureau/Technology Team/Subversion

International Game Developers Association

Jump to: navigation, search

[edit] Set-Up

You'll first have to install a Subversion client. On Windows, there's TortoiseSVN, and on the Mac you can install the version available from Martin Ott's homepage. (There's also Fink or MacPorts if they're your thing.) If you need a Finder plugin, check out the SCPlugin. If you're on Linux, you probably already know how to do this. :-)

These instructions are focused on a Unix command line, since that's what the author uses. I strongly recommend getting familiar with the SVN command line -- it's pretty straightforward, and can save you a lot of headaches.

[edit] Checking Out

Log into the repository with your username and password. If you do not have a username and password or you forgot what these are send an email the IGDA speaker's tech mailing list for help.

It's easy to check out the main development line:

 $ svn checkout http://igda-svn.shaneliesegang.com/trunk MY_LOCAL_TRUNK_DIRECTORY

And once you have a working copy, you can keep it up to date, simply running this command from within the directory:

 $ svn update

[edit] Working and Committing

Make all changes locally, and test them out in your local server setup. Once you've got something good, first update and then commit it straight into the trunk.

Make sure to run an update first so you can see any changes that have been made to the trunk since you last got your code. When you commit your changes, you should always provide a message so the other developers know what you did.

 $ cd MY_LOCAL_TRUNK_DIRECTORY
 $ svn update
 $ svn commit -m "I just added an awesome new feature."

You might receive conflict messages after the svn update; make sure to resolve all conflicts before committing.

Committing straight into the trunk is a little tricky, since it means we're more likely to step on each other's toes. But it also means that nobody gets too far out of sync. If we ever have to do versioning, we'll make a branch then (so we can fix bugs and focus on stability while continuing to push new features into the trunk).

After every commit, an e-mail is sent to the speakers_tech@igda.org "mailing list." If this proves problematic, I'll set up a dedicated opt-in mailing list.

Personal tools
Toolbox