I’ve been involved in a couple of projects where SourceSafe was kicked out. In most cases there were long discussions on how to handle the history in SourceSafe. Most developers seems to manage without migrating the history, but there has always been a vocal minority that desperately want to have the history migrated.
When dealing with this it has struck me that every project that was in favor of migrating the history also was missing decent release practices. The loudest arguments are usually that they often need to check what changed between two old versions when bugs are triaged. There are usually two reasons for this. The first is that someone has to be blamed for the error. The other is that they don’t really know when the feature was released in the first place.
My recommendation usually is to set up a working release management structure before migrating the source code to a new repository. Especially if the SourceSafe repository hasn’t crashed yet.
As far as I know there is no tool that can recreate the SourceSafe history in Subversion or Team Foundation Server for all edge cases. Especially since the notion of sharing doesn’t exist in SVN or TFS. If you know of a good tool to get the history out of a SourceSafe repository please let me know.