Subversion / SVN

 

About

Subversion is a simple version control system, well-suited for small workgroups and projects. It is commonly abreviated SVN.

Homepage: http://subversion.tigris.org/

Documentation: http://svnbook.red-bean.com/

 

Important Notes

Do not forget to submit a message every time you commit! Emails are set out informing us of the change, and without them, it’s a lot more work to figure out what a change did.

 

NSpike Use

SVN is used to store all NSpike code. The nsuite repository is located at https://secure2.svnrepository.com/s_bijan/nsuite. If you wish to become a developer, ask the administrator, Bijan Pesaran.  You will also be asked to join the IEEG Software mailing list, ieegsoftware@cbi.nyu.edu.

 

Trac Use

Trac is a wiki for subversion repositories.   We are using Trac for the nsuite repository.  Use Trac to submit work tickets for changes needed for the software.  Please submit a work ticket for features, even if you intend to fix it yourself.  This way people can understand the changes that are being made.  Trac is where you can also submit bug reports.

To access Trac, click on the following link.  You will then need to login by clicking on the ‘login’ tab on the upper-right of the page.  After you login, you will have access to the Trac page.  As with any wiki, editing the Trac page is encouraged!

http://brains.svnrepository.com/nsuite/trac.cgi

 

Timesurfer Use

SVN is also used to host Timesurfer development at UCSD. The repository there is http://svn+ssh://myusername@ip61.ucsd.edu/home/halgsvn/repos/, where myusername is replaced with your username. Contact Jason Sherfey for access.

 

GUIs

If you want a GUI client, here are my recommendations.

Macs: svnX

Windows: TortoiseSVN

 

Examples

There are still cases where the command-line client is either more useful or simply mandatory. Here are some common examples:

To check out a working copy of nsuite to a directory called NSpike_code:

svn co –username user https://secure2.svnrepository.com/s_bijan/nsuite/trunk/ NSpike_code

To update all files in the existing directory and all subdirectories:

svn update

To commit a changed file called changed.m with a message:

svn commit -m “I changed this to do X/fix bug Y” changed.m