High Performance Computing

Version Control

As a programming project develops, it can become difficult to maintain the various different versions of source files needed to build the application. There may be the need to maintain slightly different versions of some files while testing is performed, and there is often the need to revert to older versions if problems arise. If more than one developer is involved, keeping track of revisions is even more problematic.

Software tools for Version control (also known as revision control) are available to help. These are increasingly recognized as being necessary for the organization of multi-developer projects, but are also useful for lone programmers. They are an excellent way for research groups to store code and other files in a secure repository for future access and use, thus ensuring valuable work is not lost, and can be built on as individual researchers come and go.

A leading system used by many open source projects is Subversion. At Nottingham a server has been setup for the benefit of researchers at Nottingham, including HPC users. It can also accommodate collaborators from external organisations. A forum has also been established to discuss its use.