Switching from Subclipse to Subversive: First Impressions
For my personal projects, I have switched entirely over to Git for version control. However, at work I still have to use Subversion so that everyone on my team can share. That is not to say that Git isn't perfectly capable of working for our team, but that the team isn't ready to make the switch.
While I am extremely curious about the prospect of using Git as my Subversion client — something that I understand is not difficult to do — I haven't yet worked up the nerve to try it on something as important as a work project. I can't afford for something to go wrong. So for the time being, I'm still using native SVN clients.
Recently I decided that I would give the Subversive client a try. When I first started with SVN I used Tortoise, and when I started developing with Eclipse and CFEclipse, there seemed to be (after very little research) a consensus that Subclipse was the better client; so it's what I've used for the last few years.
Myself and at least one other coworker have been using Subclipse and having some problems that we believe may be unique to Subclipse — or at least to using Subclipse in our environment. We often have projects checked out onto a shared drive and have sometimes run into a situation where a commit can't be made from the root, or issues when selecting a few individual files in disparate directories. Suffice it to say, frustration is setting in and while the command-line works, it would be nice if IDE integration worked.
So that's why I'm trying something new. Not only is Subversive now an official part of the Eclipse project (a nice endorsement), but I've heard lots of praise for it recently. I've always wondered if I had made the right choice going with Subclipse, so now I'm aiming to find out.
Speed
My very first impression was how fast it seems to be. I haven't done direct side-by-side comparisons, but from a subjective standpoint it feels like browsing a large repository — the Mango Blog repository, for example — is extremely fast. Even a checkout seemed faster. And you can't complain about too much speed.
Does it work?
Of course, most importantly, is the reason that I switched: Does it work in cases where Subclipse seemed to fail us before. The answer is short and sweet: Yes! So far, I haven't run into any similar complaints about Subversive.
Shortcuts
I never knew how much I needed keyboard shortcuts for version control.
Update? Ctrl+Alt+U
Commit? Ctrl+Alt+C
Compare with latest from repository? Ctrl+Alt+L
And the list goes on. I could never switch to an Eclipse-based SVN client that didn't have these or similar keyboard shortcuts available and not experience some serious frustration.
Any complaints?
Actually, yes. I was quite surprised to find that after installing the client through the Eclipse update site, it still wasn't fully installed. It seemed like there was a framework in place for the functionality, but the first time I tried to anything with a repository, I was prompted to install a connector — a step that (to the developer's credit) Subclipse completes during the original installation.
Now, this may not be that big of a deal, and I suppose it really isn't, but I am trying hard to use UAC in Windows 7. I have my reasons, but suffice it to say that I want my relationship with UAC in Windows 7 to work out. In order to install the plugin in the first place, I had to run CFBuilder as an administrator. Fine, did that. After the install, I was prompted to restart. Ok, that's not desirable, but fairly reasonable. Once I try to connect to a repository, I'm prompted to install a connector — but oh wait, you can't just install it, you have to exit CFBuilder, run as an administrator, and install the connector. And then restart again, of course.
It's not the end of the world, but it was annoying enough that I thought I should mention it. And it's not CFBuilder's fault at all, this is a combination of seemingly-odd choices by the plugin developers and Windows UAC pains.
Do I recommend it?
Absolutely. Even if for the keyboard shortcuts alone. That plus added speed is a no-brainer for me. Where I can't use Git, I'll be using Subversive.
Posted in CFBuilder | Subversion | 4 Responses May 13 2010