Eclipse Quickie: Changing Buckminster Build To Use Git

Question: So, you are building a gaggle of projects that use Subversion, and one of them pops up and decides that distributed source code management is now the future and that they have moved to Git. You have a Buckminster build system - what do you do?

Answer: Make a simple change to your RMAP file as follows and just carry on as usual.

Before: we discover the source code of the BPMN Modeler from its Subversion repository.

[sourcecode language="xml"] <searchPath name="bpmn.plugins"> <provider readerType="svn" componentTypes="osgi.bundle" mutable="false" source="true"> <uri format="http://dev.eclipse.org/svnroot/stp/org.eclipse.stp.bpmn-modeler/org.eclipse.stp.bpmn/trunk/{0}"> <bc:propertyRef key="buckminster.component" /> </uri> </provider> </searchPath> [/sourcecode]

After: we discover the source code of the BPMN Modeler from its Git repository.

[sourcecode language="xml"] <searchPath name="bpmn.plugins"> <provider readerType="git" componentTypes="osgi.bundle,eclipse.feature" resolutionFilter=""> <uri format="{0}/bpmnmodeler,{1}"> <bc:propertyRef key="workspace.root" /> <bc:propertyRef key="buckminster.component" /> </uri> <property key="git.remote.uri" value="git://git.eclipse.org/gitroot/bpmnmodeler"/> <property key="git.remote.name" value="bpmnmodeler"/> </provider> </searchPath> [/sourcecode]

Look for: the readerType has changed to git, there's a change in the uri format, and we've been required to add a couple of new property key-value pairs. Then it works first time (for me at least!). You will need the 3.6 Buckminster stream to get the git readerType - download information is here.

I have to say a big thank-you to the Buckminster Team for this piece of software that not only powers the STP build, but also the construction of the complete Helios release!