About Books Credits Photos Software Rumblings Travelling Home
VSTS Version Control: Rant Continued

I had my initial Rant about two months ago and even when I wrote it I thought I might be too harsh or too hasty. It’s not rare that once you get to know the quirks of a tool you find ways to work around them.

Well, after more than two months of working with VSTS source control and making the upgrade from VS2005 to VS2008… I hate it even more.

Working on a day-to-day basis is a drag. Currently I have three repositories where I contribute code, 2 of those on Codeplex. Reaction times are slow compared to subversion (think horse drawn carriage against a modern car) and tectonic (think the speed with which the atlantic ocean grows against a jet fighter plane) against git.

It’s mainly perceived speed, since neither svn nor git will query a server when doing such simple (and often repeated) things like add or delete a file to the repository, find a diff etc.

Explicit checkouts are a pain, a very sharp, excruciating pain that makes me hate this tool everytime I have to do one – which is about every two to five minutes.

I’ve even tried to alleviate the pain by using the TeampriseExplorer client, which at least lets me deal with the source control without the added burden of a full blown Visual Studio suite and will run on the Mac. Since it’s Java based, it’s not lightning fast, but it beats loading the virtual machine and firing up Visual Studio. It is still a direct clone of the Microsoft TeamExplorer, so it suffers from the same drawbacks (mainly the server based view of the workspace).

The whole ALM flavor is actually pretty powerful. It is supposed to let you get on with the work, not bother with the trivial stuff of generating reports by hands etc.

Well, it sure feels like I spend a lot more time waiting for the work item list to refresh than doing anything else.

And then it’s also the fact that you can only work with one server at the time. My two codeplex projects are on different servers, the third one is at work. Changing between them is just a waste of time.

And I still haven’t tried to do “fancy” stuff yet…


Case in point: I wrote this post mostly while trying to add a few bugfixes to the V-Modell TFS Generator project and becoming extremely frustrated over how slow checkouts were over my 8MBit DSL line.

Some of the bugfixes are for the GUI of the app, so I had to switch to the Windows VM and fire up Visual Studio. For the last 45 minutes Visual Studio is “resolving conflicts” of identical files, only because those files were not writable.

Resolve in this case means “overwrite local file”, since the only other option is “check-out and automerge” and I have no intention of checking out 1300 files. “ignore” just postpones the problem for the next time you do an update.

And ofcourse VS is completely blocked, while Windows slows down to a crawl while this happens.

Such a waste of time!