As I’m typing this I’m realising my subtle change from using a using() block as suggested by the SharpSVN examples and my try…catch…finally block. I’ve been weary about using ‘using’ blocks since exposure to WCF in .NET 3.5 which didn’t implement the using block quite the same as in other places. I’m now off to do some reading about using blocks to gain a bit of better understanding of them.

As a final note, I did original implement this just to do the check-out and then rename the directories outside of using the SharpSVN toolkit, and then tried do a commit of changes via TortoiseSVN – which failed.