views:

725

answers:

16

My boss wants me to think about what to use for version control. I am a big fan of subversion, bazaar, mercurial, etc. However, we have a policy at our shop to not use open source tools!

Does anyone know of any good commercia/proprietary version control tools? We are a .NET shop and I know about Visual SourceSafe. However, I have heard less than favourable things about VSS. I also know about the Team Edition version of VS which I think may be too expensive.

+5  A: 

Hi I work in a software development company, where most of the projects are developed in .NET. We are in the middle of transferring all databases from VSS to SVN. Definitely the best option.

The combination Tortoise SVN + Visual SVN (Visual Studio plug in) or even Ankh as a free option is a killer combination.

Try to talk with your manager that not always commercial product offers best options. SVN is much more flexible, powerful, reliable then VSS.

ZokiManas
Yes, I totally agree. Problem is, I'm a relatively junior developer (2 years exp) and I just joined this company 2 months ago. The reason they're getting ME to think about version control is because I am the first developer they have ever hired! I'm essentially the development team :S
Andrew
The joys of being the first developer!!! Least you asking about source control and your boss wants to listen! Keep up the good work.
Rippo
@Rippo: Thanks! Yes, I am really enjoying the challenge of being the first developer. However, I also am very conscious of the fact that I am lacking a bit in the experience department. There are a lot of things that I've really had to think about implementing myself: version control, methodology, testing strategy, project management, etc.
Andrew
If you're the only developer, get them to buy you a MSDN premium with team edition for developers. You get the workgroup edition of TFS with that, plus all the sweet, sweet MS software you could want (7 ultimate, 2k8 Enterprise, Sql Server, VS, Expression Studio, Bob, etc)
Will
If you're the only developer, maybe they'll listen to you when you talk about the advantages of selected open source tools.
David Thornley
+15  A: 
VonC
from what i read on the internets and their pricing schema, you should note that a default install will hardly work for > 100 users.perforce is very centralized, so don't compare it with svn which at least puts some stuff in a local storage.
oberhamsi
Apparently there's a proxy for distributed development: http://www.perforce.com/perforce/products/p4p.html ... And, of course, the client workspace is on the client machine.
ChrisW
Actually, you do not need a "good LAN" at all. Perforce is very network efficient. I use it over ssh tunnels to my office servers from whatever client internet connection I happen to be on. Unless I'm checking in or out some large binary file, I hardly ever notice I'm not local. It's awesome.
darron
+1  A: 

If you like spending money, and it sounds like you do, you can use Perforce.

recursive
+8  A: 

I use SourceGear Vault... Its not too expensive and is not open source. You are not alone in working in companies where open source is barred...

Rippo
Ahh...someone who knows my pain! Thanks for the recommendation, I'll definitely look into it.
Andrew
We have been using this for about 2 years now too, its a nice product and well supported.
JohnFx
It is a good product - in many aspects better than any open-source alternative. It may be a bit basic feature-wise (compared to the most modern system), but very thought-out, robust and easy to use. Only one minor correction: don't buy Vault, buy Fortress. Integrated issue tracking is even more important than source control itself.
ima
IMO Vault is fundamentally flawed in it's philosophy. Specifically - they kept the VSS brain-fart of mapping a *Project* to a *Directory*, instead of the reverse. Hence, having multiple versions of your source is tedious, at best. That said, if you're a small all-MS shop it isn't the worst choice you could make, but I'd still suggest SVN instead.
NVRAM
It can be argued that the real brain-fart is having multiple versions of your source. Get version you want, do what you need, check in when you finish. Repeat. If you want to compare versions - use compare tools on version history. CVS/SVN is dated and flawed system itself, it just has a lot of practices defined around its idiosyncrasies
ima
+3  A: 

How about one of the SourceGear products? I haven't used it, but Eric Sink sounds like he knows what he's talking about.

Jeanne Pindar
A: 

Check out StarTeam

Chuck
Are you actually working with StarTeam and enjoying it? From what I used, I would pick anything but StarTeam. It's not opensource though so i guess it would fit..
Philippe
+1 with Philippe. StarTeam is really not what I'd call a good experience.
Pascal Thivent
I've used it for the past 7 years at 3 different companies. If it's set up and managed properly it's not a bad tool. That being said, if I had to choose between it and SVN or GIT (and open source was an option) I wouldn't choose StarTeam.
Chuck
+4  A: 

BitKeeper. It's distributed. It's what Linus used before creating git.

Mauricio Scheffer
Nobody uses BitKeeper anymore do they? (Grinning, running, and ducking.)
Warren P
A: 

If you feel like spending lots of cash there's always ClearCase

Apart from being pretty expensive, it's also a pretty good tool for 'enterprisy' shops.

Glen
NO! NO NO NO NO NO NO NO!
Thomas Owens
@Thomas: there's no reason to shout.
geowa4
@Thomas, care to backup your screams with some facts or reasons? Or is this just a childish 'anything but clearcase' scream?
Glen
http://stackoverflow.com/questions/1074580/clearcase-advantages-disadvantages for @Glen and others
geowa4
@geowa4, excellent some good points there
Glen
My biggest complaints: No changesets - you check in 3 files at the same time, that's 3 changes, not 1. It's slow - it takes a long time to check in or out large numbers of files. Dynamic views - my view can get broken because someone checked in code that broke the branch (although you don't have to use dynamic views). It's just plain expensive. If you want a lot more, just read question 1074580 - it's full of things that make ClearCase either inappropriate for a lot of use cases or just plain bad. Although part of the problem might be HOW you use ClearCase. But in my experiences...I dislike it
Thomas Owens
Clearcase is being phased out by Team Concert... which is a far superior product.
Malaxeur
I am a ClearCase administrator for the last 6 years (and Perforce, and SVN, and Git... more recently of course), but I would **never** dare to mention ClearCase here ;) See also http://stackoverflow.com/questions/1074580/clearcase-advantages-disadvantages/1074785#1074785
VonC
Oops, just realized my post was already mentioned in the previous comments ;)
VonC
Clear Case would be a great way to cure your boss of his love of commercial products. While we're at it, I'll recommend you buy a few licenses of Power Builder.
Warren P
A: 

Another option would be use a commercial SVN system (at least the client). You can use SmartSVN For the server side you can use the Collabnet builds, which are supported by a solid company.

Carlos Tasada
Yes, I've heard about these commercial SVN systems. I'll float the idea to my boss and see what he thinks. I think the main problem is that he's worried that there won't be anyone there to support problems if the system is open source.
Andrew
Just around 2 million developers around the world ;)
Carlos Tasada
@Andrew. I know it doesn't help and you already know this, but what's more likely, a single company going out of business, or an entire community disappearing overnight?
Glen
When picking any software, support IS an important factor but commercial vs open source has _NOTHING_ to do with this. I've been screwed by commercial companies before and extremely pleased with community and/or commercial support for open source software.
EvilRyry
@Carlos, 2 million huh? There's fewer than 50 developers signed up on Subversion.
MarkJ
@Andrew: The best and worst support I've had were for commercial systems. The free/open source support I've gotten has on the average been better than for proprietary software.
David Thornley
Your boss is so funny. I've had 4 or 5 or so commercial companies fold that made products i rely on. Chance of getting screwed: 100%. Using an open source project, that chance is gone. Talk about taking exactly the wrong lesson to heart.
Warren P
+7  A: 

You could branch SVN and sell it to your company (Apache license). Win-win.

Or, if you have at least one Visual Studio Team System Editions MSDN subscription (Premium) you can run Team Foundation Server for Workgroups, which comes with five licenses per subscription.

Its the second option on this list.

These guys are selling it for about two and a half grand.

Will
+5  A: 

You could buy Subversion support and related tools from CollabNet (et al) if your organization has a need to spend money to feel good about themselves. That way you at least end up with a modern tool that many people agree is good. Also, you can use hgsvn or git-svn to get the distributed feel.

geowa4
Hgsvn, git-svn? Is that a kind of distributed add-on to svn?
Andrew
please, http://lmgtfy.com/?q=git-svn
geowa4
sorry but i had to do it. you'll get more from google than i could give in in a short comment-block.
geowa4
Fair enough, I guess I was being lazy. Thanks for the answer.
Andrew
+1  A: 

Are open source tools completely forbidden just for their nature or do you just need a "neck to grab" in case things go south?

If the latter is the case, you should be able to find commercial support for most open source version control tools. CollabNet and some other companies provide support and training for Subversion, for example. The same is true for Canonical and Bazaar and there is even a company called Clearvision that offers support for a whole range of open source version control tools, including Git and Mercurial.

If you think, as I do, that the open source alternatives are better, don't compromise by choosing a less than optimal proprietary option just for the support.

Thiago Arrais
I think it's more of a neck to grab thing. Yes, as I mentioned in comments to another answer, I'll be testing the waters with my boss on this solution.
Andrew
A: 

In my opinion the free ones do the job.

I used CVS for years. Used Perforce and it was very nice, but version control is not something I'd pay for after using Subversion(SVN). SVN is now my version control of choice and TortoiseSVN (for Windows) makes it painfully simple to work with (if you know how to use concurrent version control).

Some of my friends use GIT and swear by it. So you might check that out.

Travis Heseman
A: 

Another commercial option is AccuRev. They have a different workflow model that sounds interesting, though I've never tried it.

Emil
+1  A: 

Visual Studio Team Foundation Server will put nice big dent in your boss's budget.

Agreed. It screams "I feel the need to pay top dollar for everything."
Warren P
A: 

I know its not fully released yet, ( still beta 2 as of now ), but TFS 2010 has a free express edition that you may want to evaluate.

There is a release candidate comming in Feb, and MS has said it will be released April 12, 2010

http://blogs.msdn.com/bharry/archive/2009/10/01/tfs-2010-for-sourcesafe-users.aspx

Russ