This is actually an old version of danielmall.com. For the latest and greatest, check out the new site.
 

Subversion Client Roundup

I drank the Subversion Kool-Aid; I’m sold. But I’m not a developer. I’m a designer, and I use SVN like one. I want an application that adapts to my workflow, not one that I have to mold to. Here’s what I’ve found.

Note: this isn’t an introduction to SVN. That’s been covered before in excellent articles like Chris Nagele’s Subversion for Designers and Collaborate and Connect with Subversion by Ryan Irelan.

I don’t mind figuring stuff out. I can hack my way through. But, like I’d be very hesitant to mess with any sort of server configuration that I know nothing about, I also don’t feel comfortable or even want to start messing with repositories. I want something that works, where all the hardcore lifting is done for me.

I find SVN is most useful for…

Granted, I don’t use SVN like a developer would, nor do I ever plan to. That doesn’t mean I use it to manage Photoshop or Illlustrator files, but just that I don’t really mess with things like configuration files or .htaccess or anything like that. It’s mostly front-end files.

Because I use it in such a limited capacity, I need an application that will allow me to do that. That means that applications that expose a lot of functionality like Syncro SVN Client or svnX are probably overkill for me. I’m also not terribly comfortable with the back-end, so anything that requires command line is out, which that means manually managing it and Textmate’s Subversion bundle are out. That also means that a GUI is probably a best choice. Of the GUI clients, the ones I like best are Versions and ZigVersion.

First things first: Versions is much prettier. There; that’s out of the way.

For me—and others like me—a user interface that doesn’t assume I’m an SVN expert is better. Hand-holding is good.

Start Screen

The start screens of Versions and ZigVersion

The hardest part of this process for me is the beginning. How do I “start” SVN? Both clients make it pretty easy to either connect to an existing repository, although Versions has the edge on walking you through the creation of a repository.

Updates

Update screens from ZigVersion and Versions

When you’re resuming a project, seeing what files others have changed is very important. You need to download the latest files from the repository to your local copy. Both clients show it in different ways, but ZigVersion gives you a confirmed list of all files that were downloaded.

New Files and Modifications

The different ways ZigVersion and Versions show changes

Each version denotes when you make changes to a document or add a new file. However, Versions does a better job of making the symbols noticeable, both in style as well as placement.

Committing/Checking In

Committing/checking in withZigVersion and Versions

This is a biggest one for me. ZigVersion notifies you upon committing if there are files that need to be added, denoted by a question mark. You can choose to add them if you’d like, or just let them go for next time. Versions only lets you check in modified files, but there’s no indication whatsoever that some files won’t be checked in. In a production environment where possibly hundreds of files are being added at a time, I can’t be bothered with chasing down every file to add it manually. There are certainly ways around it—like switching your view from “All” to “Changed”—but, like I said earlier, I’m looking for something that adapts to my workflow, not the other way around.

The Verdict

While both of these are extremely viable (and affordable) options that I’d be happy to use, I think I’ll stick with ZigVersion for now.

Comments

Luke Dorny said:

Some of the nomenclature used in the SVN world was confusing to me, not the least since I'm male and feared commitment.

I'm not sure if you've tried it yet, and although there are parts to it that are lacking, but by and large the SVN implementation in Panic's Coda is quite useful to me and has me using SVN without so much as clicking little icons and panels with ease.

I've been pleasantly surprised.
Going to check out ZigVersion now…

Posted on November 25, 2008 03:21 PM

Rogie King said:

Daniel,

Thanks for your thoughtful research on this. I've been hoping to try an alternate to what I use now, which actually works quite well for what I do.

I currently use SCPlugin (a finder plugin) that uses the OSX finder and a right-click menu to do all Subversion tasks:

http://scplugin.tigris.org/

However, I'll check out ZigVersion - would love to know what you think about SCPlugin in comparision.

Posted on November 25, 2008 03:27 PM

Russell Heimlich said:

I use SmartSVN from syntevo.com. It's cross platform and the interface is fairly easy to get around in. It certainly makes it easier for me to commit changes rather than hacking away at a command line.

Posted on November 25, 2008 03:28 PM

chris said:

Thanks for covering this Dan. I tried to get into the whole svnX a while ago, when thinkvitamin.com posted their svn tutorial, but just found it be horribly confusing. We deal with a lot of template files, but like you, never really anything too technical.

Posted on November 25, 2008 03:33 PM

Wilson Miner said:

Cornerstone is another nice Mac SVN client.

Posted on November 25, 2008 03:41 PM

Scott said:

Thanks for a nice little writeup Dan.

Cornerstone, as Wilson mentioned, while crazy slow when we first tested it (it's improved since), but was the only svn client that could actually show you a side by side visual comparison of Photoshop files which is pretty cool (and handy). I think it still is too. Admittedly though it took us the better part of 30 minutes to figure out how to do that which was annoying.

I've played with Versions a bit and like it, but being quite adept at the command line, I mostly prefer Textmate or the command line to get stuff done. On the other hand, Anna at our office uses Coda to get at our repositories since she's totally non-technically inclined. I still end up helping her with setting things up, but Coda was a good way to let her get her feet wet with Subversion.

Posted on November 25, 2008 04:12 PM

Dan Mall said:

Wilson: I gave Cornerstone a try when I first started thinking about writing this. It’s great, but I think a little too powerful for me at this point.

Scott: I had no idea Coda had that kind of functionality built in. I gave it up about a year ago for Textmate and never looked back, but I might be persuaded to revisit it, if only just for curiousity’s sake.

Posted on November 25, 2008 04:32 PM

Jeremy Flint said:

Versions does show you files that won't be committed - also using a question mark. You have to right-click them and select Add, then they can be committed.

Posted on November 25, 2008 07:01 PM

Scott said:

Dan: I believe Coda's addition of Subversion functionality came fairly recently, but has been improved a bit since to support both the 1.4 and 1.5 versions of Subversion. If it weren't for Textmate's general flexibility, I probably would have given up on it too and gone back to using BBEdit full time. I still love BBEdit though.

Posted on November 25, 2008 10:06 PM

Ethan said:

Great write-up, Dan. Personally, I prefer the command line, but there are definitely some tasks that would probably be better suited to some sort of UI. I might have to check out Versions or Cornerstone again.

Not completely related, but this bit caught my eye:

That doesn’t mean I use [SVN] to manage Photoshop or Illustrator files….

Out of curiosity, why not?

Posted on November 25, 2008 10:36 PM

Frog said:

Hi Dan, I completely agree with your findings. Previously I have used SVNX on MAC OSX but was overjoyed by the simplicity of versions. Unfortunately I'm still on OS 10.4, bad because xtools is required for file merging on this is only compatible for 10.5 (or so I think). Great write up, Frog.

Posted on November 26, 2008 08:51 AM

Dan Mall said:

Jeremy:

Versions does show you files that won't be committed - also using a question mark.

Yes, but to see it, you either need to have every folder open or the specific folder open. I usually just select the root folder to check in all my changes at once, so it kinda defeats the purpose to hunt for files one-by-one.

Ethan:

Out of curiosity, why not?

Hmm, good question. I usually just use SVN when I'm building a site. That way, when I’m done, I can just checkout or manually move the whole root directory to the live server.

I guess I’ve never thought of managing design files that way, although I’m certainly open to it. Care to share your process?

Posted on November 26, 2008 02:16 PM

alaa said:

may i say that what you described svn or the other tool positively with can be applied equally to GIT, it has what you said and more.

Posted on November 29, 2008 05:14 AM

Nick Whitmoyer said:

I've also been looking for a decent Mac-based GUI for Subversion. I'm using Cornerstone after having compared it with Versions. I'll have to give ZigVersion a try too.

It's great to see more Mac-based GUI options today in comparison to less then a year ago.

More importantly, I'd like to find something similar to WinMerge for the Mac that allows merging changes between versions.

Posted on November 29, 2008 09:41 PM

Sorry: comments are closed.