Stormwind.Svn
Introduction
Ever wondered how to connect to a Subversion repository using .Net? So do we!
I'm working in a project that needs SVN Connectivity features. "How hard could it be, right?" was my first thought, before spending the next 2 days trying to figure out an easy way of doing that.
All the pain went away when I stumbled on this gem: IronSvn. This very nice project allows us an easy way to connect to SVN using Managed C++ Code. Yes, that's right! That means no interop/PInvoke crap. Kudos to this amazing effort!
Stormwind.Svn
Since you've been reading my posts for a while (yes, all the three of you, lol), you know that I don't get easily satisfied with frameworks' syntaxes. Then I decided to wrap IronSvn in a fluent interface, thus making it so easy to use that it's kinda boring.
Some examples of the current usage:
SvnClient.ForPath(configuration.CheckoutPath).Status
Now a checkout:
SvnClient.ForPath(configuration.CheckoutPath).Checkout(url);
And an update:
SvnClient.ForPath(configuration.CheckoutPath).Update();
Hope that's easy enough!
Ok, How do I get it?!
I've setup a wiki for it in http://using.stormwindproject.org at http://using.stormwindproject.org:8081/display/svn/Home.
As usual the source code can be found in Stormwind SVN Repository at http://svn.stormwindproject.org/svn/Stormwind.Roswell/SubProjects/Stormwind.SVN.
Any comments, frustrations, desires, etc, can be mustered in the stormwindcommunitydev@googlegroups.com google group.
Conclusion
Check it out if you ever needed to use SVN in your code and felt as frustrated as I did.
Cheers!
#153