Fog Creek Software
Discussion Board

Favorite Source Control / Versioning Tool

This is obviously not really a new topic, but I haven't seen any posts about it here for a few months.

What I personally am interested in finding is a product that works well as a web service so that I can easily check code in / out when away from the office.  I remember there being some posts about source control products that feature SOAP interfaces a while back - has anyone used one that they liked?

Another thing that would be nice would be if the product either included or integrated with some sort of build-automation tools...


Tim Lara
Tuesday, July 30, 2002

Most source control products will run on a server and therefore be remotely accessible. I doubt that any of them will presently use sexy technologies like web services or SOAP, but it will work.

Why do people (and especially Dilbert type managers) specify requirements like: "It must use Web Services / SOAP / XML / .NET / Java / Your_favorite_technology_du_jour" instead of "I want to be able to connect remotely"?

Jan Derk
Wednesday, July 31, 2002

Code Co-Op from Reliable Software uses Email rather than HTTP, and does not require a central server.

Ged Byrne
Wednesday, July 31, 2002

Visual Source Safe, but I've heard cool stuff about CVS.

Matt H.
Wednesday, July 31, 2002

>>Why do people (and especially Dilbert type managers) specify requirements like: "It must use Web Services / SOAP / XML / .NET / Java / Your_favorite_technology_du_jour" instead of "I want to be able to connect remotely"? <<

Jan - Good question.  I think you may have touched on the answer already by referring to these technologies as "sexy".  I'm guessing that it has a lot to do with the fact that many managers and most of the customers / bosses they are pitching to / reporting to often do not really have a fundamental understanding of the internal processes involved in "just getting things done".  What do most people do when they don't really understand something?  Nod their heads and say, "Oh, I see!  Cool!" when they hear someone mention a fancy new acronym that they've heard raves about in the latest trade magazines.  I think a lot of consultant types realize this and glom onto every shiny new media darling term that they can in order to create the illusion that the solution they slammed together to incorporate these new technologies is somehow better than an existing solution that has been working smoothly for a while but uses older technologies.  I tend to prefer an older code base that has been beaten up for a while and still survived.

I'm afraid that sometimes - because of daily exposure to these type of people and their monsoons of hype, and admittedly, because of my own inexperience as well - I tend to get caught up in all of this sort of bandwagoning.  Thanks for clearing my head, Jan!

So, after rambiling on for far too long already, let me rephrase my question:

I'm looking for a source control solution that:

1) allows me to connect remotely to check in / check out
2) is reliable and securable by user level permissions
3) is not too difficult to set up / maintain
4) supports scripting or integration with a build automation tool
5) is affordable (< $500)

I'm also curious why most readers here seem to dislike MS Visual Source Safe.  (other than the fact that it is a Microsoft product)  What do other products offer that make them superior?  I remember Joel saying that MS doesn't use VSS internally -  so what do they use?

Tim Lara
Wednesday, July 31, 2002

re: Code Co-Op

Definitely looks to be in my price range, I'll check it out. Thanks!

Tim Lara
Wednesday, July 31, 2002

We use CVS at work with six developers on a 250 thousand line java product. Developers use Windows, CVS server is on an AIX box (was on a smaller linux machine). There are many client side tools for CVS, including at least one that integrates with window's explorer to put CVS actions on the right mouse menu, though most IDEs will support CVS. We've had no problems with this setup and have been using it for over two years now and the price is certainly right.

Alex Moffat
Wednesday, July 31, 2002

I've been using Perforce for 3 years now.  It is very powerful and intuitive.  The main downside is that it costs $600 per user.  Some of the things I like about it:

1. Atomic checkins: you check in a group of files at a time, and the checkin is not complete until its "complete".
2. Labelling and branching capabilities.  If you have lots of branches to maintain and need to associate them, perfoce can help you.
3. Very intuitive.  It does what you think it should be doing.  You don't have to "think in a paradigm".

Its light weight for developers and heavywieght for administrators. 

The worst I've ever used: SLM and ClearCase.  Clearcase makes every checkin an act of congress...  SLM just plain didn't work with a damn.

Nat Ersoz
Wednesday, July 31, 2002

I currently use VSS at work and CVS for my outside business. WinCVS and tortoise can be quirky sometimes but they work as decent win32 clients. I look forward to seeing how <a href="">subversion</a> turns out. It apparently is written by the same folks that wrote cvs and it's supposed to improve on the same core ideas with a lot of new improvements.

Ian Stallings
Wednesday, July 31, 2002


Ian Stallings
Wednesday, July 31, 2002

What would people recommend for lone developers? Both at work and at home I'm the only developer working on my projects, but I still have headaches with version control. Vss and its like seem way over the top, not to mention expensive. Any thoughts?

Wednesday, July 31, 2002

>>Why do people (and especially Dilbert type managers) specify requirements like: "It must use Web Services / SOAP / XML / .NET / Java / Your_favorite_technology_du_jour" instead of "I want to be able to connect remotely"? <<

I wish *everyone* asked questions like this! I work with countless clients who didn't ask and are now stuck on obsolete crap.

Wednesday, July 31, 2002

Take a look at BitKeeper. It blends some of my favorite aspects of CVS and ClearCase.

Steven E. Harris
Wednesday, July 31, 2002

GH: I work alone too, and I use Code Co-op, which was mentioned before.

Frederik Slijkerman
Wednesday, July 31, 2002


For lone developers or small groups you might look at FreeVCS.

Pros: supports multiple database back ends, works nice over VPN, easy to learn, costs $0, so far quite reliable.

Cons: Not too fancy with features, kind of inflexible, development appears to be halted.  My guess is it's probably not suited for large or complicated projects, but I haven't pushed those limits myself.

Matt Conrad
Wednesday, July 31, 2002

I recently moved to Perforce ( after using VSS for years and I'm loving it! It has a web ui, but I haven't tried it.

Wednesday, July 31, 2002

CVS for lone developers or people who do not want to pay anything.

Big Mack
Wednesday, July 31, 2002

Perforce has a 2 user / 2 client free "demo" license that never expires.  When you download Perforce you get the actual program - you just buy a license file that allows you to have more users on your server.

If you haven't tried it you should.

Thursday, August 1, 2002

The fact that no one ever mentions MKS in these source control threads, combined with the fact that that's the one we "use", makes my tummy ache and my ankles swell.

Dunno Wair
Friday, August 2, 2002

I'd just like to add another to the list, Team Coherence has a very nice feature set, it's easy to setup and works well.

Vincent Parrett
Thursday, August 15, 2002

*  Recent Topics

*  Fog Creek Home