Subversion Notes

The JigCell team uses Subversion to manage their source code. If you want to access the latest version as the developers are working on it, you can install a Subversion client on your machine and access the JigCell repository. Warning: at any given moment, the current version of the repository may be broken (e.g. it may not compile, it may not run, or it may destroy data). If you still wish to access the repository, follow the instructions below.

For the general public

Create a directory to hold the files, and change to that directory.

mkdir jigcell
cd jigcell

Now you need to look in the repository and find the project in which you are interested. Then you can run:

svn checkout http://jigcell.biol.vt.edu/svn/path-to-whatever

For example, if you want to get the JigCell project (which is what most people will probably want to do), run:

svn checkout http://jigcell.biol.vt.edu/svn/jigcell

Note: Do NOT check out the root of the repository.

Now that you have a working copy, you can update it quickly and easily to get the current version. To do this, make sure you are in the directory that you created, and then run:

svn update

If you have any more questions about Subversion, look in the Subversion book. The book is available online in a variety of formats, and it is very well written.

For internal developers

Your account

You will need an account on the Subversion server. When you receive your account, it will have a default password that you must change. Go to the User Management page to change your password.

Working with the repository

Once your account is working, create a directory and change to it.

mkdir jigcell
cd jigcell

Find the part of the repository that you want to access. You can view the repository with a web browser. Once you know what you want on your machine, check it out.

svn checkout https://jigcell.biol.vt.edu/svn/path-to-whatever

Note: Do NOT check out the root of the repository. In other words, do not leave out the path-to-whatever.

Your Subversion client should mention that the server is using a self-signed certificate. Tell it to accept the certificate permanently.

For instructions on how to work with your working copy, refer to Chapter 3 of the Subversion book. Specifically, you should read through the section titled "Basic Work Cycle" That will tell you how to update your working copy and how to apply your local changes to the repository.

Personal directories

When an internal developer gets an account, a directory will be created in "svn/developers" with the developer's account name. Note that directories in "svn/developers" can only be accessed by people who have Subversion accounts on jigcell. In addition, the personal directories of each user will only allow writes from that user. However, any of the users can create additional directories in svn/developers, and those directories will be readable/writable only for developers.

Feature freezes

Prior to official releases, a "feature-freeze" will be announced. At this point, only bug fixes should be committed. If you would like to develop new features during a feature-freeze, you should create a branch of the project in your home directory and add the features there. After the feature-freeze is over, you will be responsible for merging your changes back into the project (Chapter 4 of the Subversion book explains how to do this).