views:

1544

answers:

16

I tend to get the feeling that most folks here think SVN is gold-plated goodness, whereas VSS is the worst program ever devised (at least as Version Control is concerned).

That said, why? I've used some CVS, and my current job uses VSS, and from a grunt on the team's perspective, I can't really tell that much difference. Most of the differences I've seen are cosmetic. Granted, I've not tried to do any branching/merging in either, but as a coder who comes in, checks out files, works on those files and checks them in at the end of the day, why would I want 1 over the other?

+10  A: 

I refer you to the answers to What is so great about Subversion?.

Greg Hewgill
+9  A: 

Microsoft, which makes Visual Source Safe, does not use it internally for any projects of any significant size. That's a major mark against it, in my book. And using it for large projects, you understand why; it's SLOW, and god help you if you ever decide to let it auto-merge anything.

McWafflestix
I always understood that Microsoft never used Visual SourceSafe for anything. At all. Ever.
Greg Hewgill
+1  A: 

VSS has a really bad history that it has to overcome. More recent versions seem to be more stable, but it still has a metric crap ton of negative baggage that it is toting around.

EBGreen
latest version? You mean 6.0b? Which was last released in 2001 with the .NET 1.0 Framework and Visual Studio 2002?
Nick Berardi
Metric Crap Ton? I lolled at that!
Pulsehead
The latest version of VSS was VSS 2005
crashmstr
You are right. I should have been more specific. I am currently using the 2005 version (8.0) which actually is not the *most* recent version but was released in 2005.
EBGreen
And just to be clear, at home I use SVN for my own code just because I like to support MS competitors because competition is good.
EBGreen
+5  A: 

My last-but-one company switched from VSS to SVN because of

  1. Expansion. The number of programmers doubled and we didn't want to fork out for the extra VSS licenses
  2. Bugs. VSS is good at maintaining the latest version of a file, but histories often got corrupted.
  3. More bugs. The checking/recovery tools were useless as they started crashing when the database got very large.
finnw
+3  A: 

SVN has some important features over CVS/VSS, like atomic commits, cheap coppies, more efficient storage on the server side.

SVN is, however, not the only recivison control system out there... There are a lot of different revision control applications. A new trend seems to be towards distributed revision control, like Git or Mercurial.

Martin C.
A: 

Well CVS and VSS are pretty much the same thing as far as functionality goes. So they are not a good starting point to compare each of them.

However you probably will never see a difference between SVN and VSS if you just use them as a grunt on the team. You really have to start using them as a project manager to really see the differences, such as branching, merging, etc.

Nick Berardi
CVS isn't great by today's standards (SVN addresses most of its limitations), but it's vasty superior to VSS in terms of robustness, performance, security, portability, feature set and just about every other worthwhile metric.
Dan Dyer
I also wouldn't have said that branching and merging were tasks for a project manager :)
Dan Dyer
Well most projects don't want developers just creating branches all over the places, and merging those branches back in to the code
Nick Berardi
A: 

SVN works well from a developer standpoint, but the way it stores config info all over the directory tree is maddening to sysadmins (especially those tasked with moving it to another server when the developers refuse to do a commit/re-checkout process). :) So, it's not ALL gold-plated goodness!

Brian Knoblauch
Type: 'svn help switch' and look at the '--relocate' option. This handles moving servers without recheckout. In TortoiseSVN you should just try the switch command. It automatically relocates your workingcopy when it finds out it can't just switch.
Bert Huijben
+6  A: 

VSS is not atomic, so a get latest during a large check-in from another user will result in an incomplete file set. This also gets worse if working over a WAN due to the design of VSS to work over shares.

crashmstr
+1  A: 

I actually think Perforce is the gold-plated goodness. The GUI tools are good enough that you can give them to a designer or artist and get them to use source control like us devs. I'm pretty sure the VSS File->Add Files window predates windows 95. The whole concept of files in use being locked is absurd. Didn't we solve that decades ago with CONCURRENT versioning? I have experienced history corruption and (correct me if I'm wrong) but VSS does not even support branches and merges.

Nick
+1  A: 

I like SourceVault much better than VSS or SVN

Steven A. Lowe
Vault is a great upgrade for shops using VSS, know they need to get off it, but don't want (too much) change. Eric Sink's built SourceGear business entirely on how much VSS sucks.
Darcy Casselman
+24  A: 

“Visual SourceSafe? It would be safer to print out all your code, run it through a shredder, and set it on fire.” - (Attributed to an unidentified Microsoft employee).

SourceSafe has many problems and no redeeming features. There are several freely available, cross-platform alternatives that are safer, faster and more powerful. Subversion is probably the most widely used of these. Some people prefer distributed version control systems such as Git, Mercurial or Bazaar.

Some reading about why VSS is so bad:

Dan Dyer
Upvote for making me laugh so hard my coworkers asked me if I was all right with that quote... ;-)
McWafflestix
+1  A: 

You should run from VSS as soon as you can. If you haven't had problems with it in the past then you are due from some. It's like a Russian Roulette time-bomb - you never know when it's going to blow.

SVN is a great tool and very easy to setup, manage. Administration tools for backing up or replicating are very nice.

I would recommend SVN over VSS anyday.

Brian

Brian Behm
+2  A: 

I know that it is easy to pick on VSS, but it is important to remember a few things (get out of the weeds for a second!)

  • For small Microsoft development teams, VSS is a very easy to implement solution, where the alternative is NO VERSION CONTROL.
  • VSS has no cost, requires no server (other than a file share).
  • Lowest common demoninator.
  • It generally does work, and a number of shops use it.
  • I would rather have VSS as an option than for it to not exist.

You don't have to agree with me on all these points, I'm only demonstrating that it does have it's place, and has value in different scenarios.

pearcewg
The fact that it relies on a file share rather than a server is the root of most of its deficiencies.
Dan Dyer
"A number of shops use it" is a gross understatement. VSS, while admittedly better than nothing, is epidemic. It's surprising how many shops don't know there are better, free alternatives out there.
Darcy Casselman
A: 

The old argument of integration in Visual Studio doesn't work any more. AnkhSVN 2.0 delivers an integrated solution and VisualSVN integrates TortoiseSVN into Visual Studio.

And TortoiseSVN itself is enough reason to switch for many users.

Bert Huijben
A: 

I have problems with VSS with Java code. While a getLatestVersion, VSS is unable to handle the nested structure of projects and packages in java. I got inifite folder structures for the same. SVN is quite simple in this regard.

sapna