[reposting old semi-finished copy since Slashdot ate my entire edit window cold and UNRECOVERABLE when messing with Options dialog - and that's not the first time either of severe data loss with Slashdot website design!]
- no atomic checkins ("goddamn, somebody forgot to check in another file again" - "err what in fact I did"), no consistent changesets
- 5 GB max (official Microsoft recommendation), severe index size limitations
- may corrupt easily
- branching is ""supported"" but stay far away from it (said to be #1 source of corruption)
- NO BLAME MECHANISM (perusing the Changelog thus takes about 5 minutes each to hit the relevant spot)
- no 3-way merge AFAICS (and TFS still does not have that either)
- cross-platform support is laughable (there's SOS, but you easily hit trouble on each of RHEL, Ubuntu and Mac, and of course there's no 64bit platform anyway, and it's x86 only)
- performance is abysmal (depending on the moon phase, current mood of the Windoze server and number of busy colleagues, waiting for - yes, indeed - 1.5GB of source repository TAKES AGES (15 min. with VSS on Windows, up to 2 hours on SOS when synching database and subsequently fetching the entire tree); dito simply switching folders in GUI client treeview on SOS may take up to 5 minutes sometimes; this all as opposed to waiting for at most one minute for a kernel.org update to arrive from an internet server
- terrible check-out mode of operation, leading to that dreaded "all files readonly" standard way of operation as opposed to good SCM
- large slowdown of MSVS operation (lock contention!?!?) when additionally running the standalone VSS client
- keeps asking the same stupid questions over and over again rather than simply fetching files
- no distributed SCM (minor item)
- sos command line client is NOT parallelization-safe (needs addition of manual flock/lockfile mechanisms in a wrapper script for reliable use within a massively parallel build system)
- VSS DOES NOT LOCALLY DELETE FILES REMOVED FROM REPO (that one is a killer)
And please do me a favour and don't go cold-turkey to a TFS "upgrade"
but have a worthwhile attempt at reaching an informed decision of which ALM/SCM to actually use.
TFS, while most likely a lot better than VSS, is said to still have lots of rough spots.
See various Internet blogs (e.g. "TFS the Lotus Notes of ALM").
Suitable alternative names may be Mercurial, git, and ALM components such as Trac.