Search code examples
gitversioningvisual-sourcesafe

Can Microsoft Visual SourceSafe and GIT work next to each other?


In my company, we are working with Microsoft Visual SourceSafe.

As this is a very old system, I'd like to stop working with this and go for GIT.
On the internet, there should be plenty of explanations on how to convert the whole SourceSafe environment into GIT.

However, I'm dealing with colleagues and a boss who are very reluctant to change, and therefore, instead of forcing them into GIT, I'd like to introduce GIT on my workstation while they can keep working with SourceSafe.

This would mean that they can continue versioning with SourceSafe on the source code repository, while I do the same on the same source repository, and my changes are visible on their workstations while their changes are visible on mine.

Is this possible and how?


Solution

  • VSS cannot exclude folder (as commented in the article "Source Control: Anything But SourceSafe", from twelve+ years ago, Aug. 2006, by the very same creator of Stack Overflow, Jeff Atwood).

    That means, you cannot create a .git subfolder (with git init .) directly within a checked out VSS workspace.

    Plus, as described in "Migrating from Visual SourceSafe to Git" from 2013 by Chris Oldwood, not every content from Source Safe would fit one Git repository (which should represent one component, not a collection of different projects).
    Or would fit any Git repository (considering it is a source control system, and VSS could very well store large binaries).

    But you still can create your Git repository anywhere you want outside of VSS checked out files, and use git with:

    set GIT_WORK_TREE=/path/to/VSS/workspace/subfolder
    git status
    git add .
    git commit -m "Import from VSS
    ...