welcome: please sign in

Revision 12 as of 2011-01-23 15:42:46

Clear message
location: versionControl

Version control

A version control system is useful when working on a collection of files that evolves over time, in particular if several people are modifying the files. For example, version control is often used in software projects to store the code in a way that several developers can access and contribute to the code without the need to send files by e-mail etc. Another example is when you are writing a paper with your colleagues and you need to efficiently and safely share your additions to the paper. A version control system also keeps track of the history of your contributions; most version control systems can be used to retrieve the state of your files as of a given date. This means that there is no need to create local back-up copies. To make it short and sweet: version control means you can relax.

The version control system Subversion is installed on one of our servers. Currently, it is used for a number of research projects, some master's thesis projects and for the projects in the Project in Automatic Control course.

We can also set up repositories using Bazaar where access can be granted also to external users. If there is enough interest we can also support for example Git or Mercurial repositories.

Talk to Anders Nilsson in order to have a repository for your files set up, or if you want to know more about version control.

Guidelines for using Subversion

An excellent source of knowledge about using Subversion can be found at http://svnbook.red-bean.com/. Here you will find basically everything you need (and more) to use Subversion efficiently. Some basic guidelines for using Subversion are:

Project planning with Trac

In some larger, software-oriented projects involving several developers, it is useful to have a tool for planning, coordination, and documentation of the work. For this purpose, we now have the option to use Trac. Trac is a web and wiki-based planning tool in which tickets/bugs can be registered and assigned to developers, milestones defined. The Trac installation has right now support for subversion, bazaar as well as git repositories.

If you would like to try Trac, talk to Anders Nilsson.

The user's guide for Trac is integrated with the system itself. The following guidelines summarize basic usage of Trac.

Projects

This is a (non-complete) list of Trac sites (limited access):

L001-AVRCurrentControl

Per-Ola Larsson, Pontus Giselsson

L004-RBBotFleet (drone, artoolkit, and BoB stuff)

Vladimeros Vladimerou, Martin Eriksson