[MonoDevelop] Subversion integration

Joshua Tauberer tauberer@for.net
Wed, 06 Apr 2005 10:53:56 -0400


At the expense of getting actually important things done in my life, I 
started hacking subversion integration for MonoDevelop a few days ago. 
It's far from complete, but I wanted to post it to see people's thoughts.

The source & binaries are posted at:

To use it, copy VersionControl.addin.xml and (from the bin directory) 
Diff.dll, DiffGtkWidget.dll, and VersionControl.dll to your MD AddIns 
directory.  (Diff and DiffGtkWidget come from my Diff library at 

The addin adds two new context menu items -- Diff and History -- to 
files listed in the project browser that are under svn version control. 
  Diff shows a nice color-coded difference since the last commit/update, 
automatically updating when the file is saved, and supporting exporting 
unified diffs via Save As.  History shows all of the log messages for a 
file going back to revision 0, with buttons to show changes or the 
file's content at any of the revisions.

Subversion (specifically libsvn_client-1.so.0) has to be installed for 
the history functions to work.

Among the things that are left to program are catching exceptions when 
there are problems, progress bars, and all of the remaining svn commands.

Other version control systems can be plugged into the addin easily, if 
anyone else wanted to work on that.

- Joshua Tauberer


** Nothing Unreal Exists **