SmartSVN is my go-to tool for Subversion work. I believe that most people use either the command line ‘svn’ tool, or TortoiseSVN. Now I like command line from time to time too, and for that I use SlikSVN under Windows. I don’t like command line for the majority of the work though, so I stick to SmartSVN.
I’ve used Tortoise a lot, as well as the VS plugins AnkhSVN and VisualSVN. I’m not going to criticize them from a technical standpoint, but what it comes down to is this — integration sucks. Visual Studio integration is pointless when half your files aren’t in VS anyway, and Explorer was never designed to be Subversion. I went looking for a stand-alone SVN client and tried a couple (RapidSVN comes to mind) before settling on SmartSVN.
Why is a stand-alone client better? I can see a lot more information about the repository at once for starters, like the revision history, working copy status (with all kinds of sort options), my recent transactions, etc. The menu structure is also a lot nicer to work with than one giant embedded shell menu. I also like SmartSVN’s project management, so that I don’t have to go hunting through the filesystem to pull up projects. And as a simple practical matter, it keeps my Subversion windows separate from my Explorer windows in the taskbar.
Is this an advertisement? Yeah, a bit. The people at Syntevo were nice enough to kick a pro license my way, which adds a bunch of features — I’m looking forward to Perforce style change sets. And I won’t lie, at $70 USD the pro license is a bit steep. But I’ve been using the free version for a couple years now and I’m not planning on going back to Tortoise any time soon. (And yes, Smart has shell integration if you still want it.)
And there’s my pitch. I seem to have gotten into a routine of highlighting the tools I develop with, so I’ll continue that trend for a while.