What's the right way to branch with Visual Source Safe?

What I currently do is I link the project to another location and give it the same name, then check the box where it says “Branch after share.”
And then I would Check out the shared project and work off it. And finally merge with the original project.

This works okay, but it feels very clunky: I have multiple instances of the project on my drive; I have to change physical address of the website (i use asp.net 1.1) every time I work on a different branch;

That doesn’t feel like the right way to do it. How do you branch your projects with VSS?

  • How can I index our internal source code?
  • Why do Version Control Systems lack the sharing functionality of Visual Source Safe and what source control do you use and reckon is worth trying out?
  • VSS to SVN - Repositories
  • Using Subversion and Visual SourceSafe in parallel?
  • Git/SVN for asp.net development instead of VSS?
  • Alternative to VSS for a one man show (army of one?)
  • VSS to SVN migration; tool suggestions?
  • Using Subversion and SourceSafe at the same time?
  • 4 Solutions collect form web for “What's the right way to branch with Visual Source Safe?”

    I think the way you describe in the question is the only way you can do it in sourceSafe.

    I usually name the copied directory “V1.0” (or whatever is appropriate) and keep them all in a folder that is the main project name.

    That is the generally accepted way of branching your source code in SourceSafe. The only other way to do it, if merging and retaining the history are not an issue, is to copy the files to a new folder, remove the read-only attribute, remove the .vssscc and .scc files, and then add that new project to SourceSafe. At that point, you have an all new project, with no prior history.

    You can find a good reference here: http://www.codepool.biz/version-control/sourcesafe/branch-in-sourcesafe-vss.html

    Basically right-click-drag your folder to where you want a branch, and when you let go you are given share/branch/recursive options.


    The way you described is the only supported way to do “branching”. And as you pointed out it is rather clunky. In VSS it’s best to avoid branching alltogether as it will destroy your source history.

    Git Baby is a git and github fan, let's start git clone.