Switch from CVS to Subversion
The switch from CVS to Subversion took place Friday 13 March 2009. Before this date, all source code used to be managed in a CVS repository hosted by SourceForge. After this date, source code is managed in a Subversion repository also hosted by SourceForge.
How to Access the Repository from Eclipse
To access the subversion repository, you need to install a Subversion plug-in into your Eclipse development platform. There is currently two plug-ins that are known to work quite well: Subclipse and Subversive. We recommend to use Sublipse. It would be a bad idea to install both plug-ins in the same platform as they conflict with each other.
The repository itself is available at URL https://rodin-b-sharp.svn.sourceforge.net/svnroot/rodin-b-sharp.
Where Are my Modules
Just after the switch from CVS to Subversion, certain CVS modules have been moved to clean up the root of the repository. The modules below have been moved to the new RodinCore directory:
fr.systerel.explorer fr.systerel.explorer.tests org.eventb.core org.eventb.core.ast org.eventb.core.ast.tests org.eventb.core.seqprover org.eventb.core.seqprover.doc.isv org.eventb.core.seqprover.tests org.eventb.core.tests org.eventb.doc.user org.eventb.eventBKeyboard org.eventb.eventBKeyboard.tests org.eventb.ide org.eventb.ide-feature org.eventb.pp org.eventb.pp.tests org.eventb.pp.ui org.eventb.pptrans org.eventb.pptrans.tests org.eventb.ui org.eventb.ui.icons org.eventb.ui.tests org.rodinp org.rodinp-feature org.rodinp.core org.rodinp.core.tests org.rodinp.platform org.rodinp.platform-feature org.rodinp.releng
and the following modules have been moved to the new XProver directory:
org.eventb.xprover.tptp.core org.eventb.xprover.tptp.core.tests org.eventb.xprover.tptp.spass.core org.eventb.xprover.tptp.spass.core.linux org.eventb.xprover.tptp.spass.core.macosx org.eventb.xprover.tptp.spass.core.tests org.eventb.xprover.tptp.spass.ui org.eventb.xprover.tptp.ui
and the following modules have been moved to the new AnimB directory:
org.animb.animation.stubclient org.animb.core org.animb.core.tests org.animb.eclipseBuilder org.animb.eclipseBuilder.test org.animb.eventsexecutor org.animb.export org.animb.feature org.animb.feature-def org.animb.history org.animb.ipConnectionTest org.animb.ipconnection org.animb.ipconnectionplugin org.animb.observer org.animb.server org.animb.serverplugin org.animb.site org.animb.ui.utils org.animb.updatesite org.animb.valuation
and the following modules have been moved to the new Brama directory:
com.clearsy.animator.core com.clearsy.animator.core.eclipseBuilder com.clearsy.predicateB com.clearsy.predicateB.tests
How to Move from CVS to Subversion
The simpler is to create a second workspace on your computer and to launch two Eclipse programs, one on each workspace. For each project checked out in the CVS workspace, just checkout the same project in the Subversion workspace.
If you have some yet uncommitted changes in your CVS workspace, you can select the files and drag and drop them in the appropriate place in the Subversion workspace. Alternatively, you can create a patch. For that, select the project(s) that contain uncommitted changes, then selectfrom the context menu and follow the wizard. Then, in the Subversion workspace, select to apply the patch.
Procedure Used for Moving CVS History to Subversion
When switching from CVS to Subversion, we made our best to keep the history of all files. We followed this procedure:
- retrieve a copy of the whole CVS repository into directory cvs
- launch commands
- upload file svndump2.gz to SourceForge
- start a shell service on SourceForge and type the following commands
cvs2svn -q --dumpfile=svndump --force-tag=GMF2 --encoding=utf-8 --encoding=latin1 cvs svndumpfilter exclude CVSROOT < svndump > svndump2 gzip -9 svndump2
adminrepo --checkout svn zcat svndump2.gz | svnadmin load /svnroot/rodin-b-sharp adminrepo --save svn
Note that the filtering on CVSROOT didn't seem to work as expected: this directory still occurred in the SVN trunk and had to be removed manually.