Code documentation

Development tools

Code Structure

Techniques and Standards

How To

Functional Info

Background Info

JMRI Code: Subversion FAQ

JMRI has migrated from Subversion (SVN) to Git in September 2015. For our current Version Control FAQ, please see the Git FAQ.

This is a list of Frequently Asked Questions for Subversion, particularly regarding how we used it with JMRI up until 2015.

See also the Technical index for more information on maintaining JMRI code.

SVN Properties

In general, we keep everything in SVN revision control, so there's no need for the various properties lines we used to need in CVS. These looked like
# The next line is maintained by CVS, please don't change it
# $Revision$

But there are certain files, like decoder XML, properties files, etc, that users are likely to edit and submit back for inclusion. It is very helpful if we can identify the specific content that they started with.

Therefore, for html, XML, python and properties files, we do:

svn propset svn:keywords "Date Revision Version Id Author" {}
That way SVN will fill in those tags if/when they're present and the file is changed.