I am importing a website into TFS that is stored in SourceSafe as
$/MyApp 1.0
$/MyApp 2.0
$/MyApp 3.0
$/MyApp 3.5
Should I import this as several distinct projects (MyApp1.0 … ) or as one project called “MyApp”?
As a single “MyApp”, then use a branching strategy…
You should consider following a standard branching strategy that contains Development, Main, and Release branches. It may take a little getting used to if you haven’t dealt with branching and merging before, but it will provide benefits when it comes to managing changes when multiple teams or features being developed at the same time.
There is a group called the ALM Rangers that publish guidance on this for TFS (see links below).
TFS Rangers Branching & Merging Guide – http://vsarbranchingguide.codeplex.com/
MSDN Article “Visual Studio TFS Branching and Merging Guidance” – http://msdn.microsoft.com/en-us/magazine/gg598921.aspx
A rule of thumb is to not worry about different TFS projects except when you want different TFS templates. This means different work-item templates, different sharepoint projects sites, different reporting services spaces.
9 times out of 10 people make extra TFS projects based on what should be branches, remember, the only difference between two TFS projects is the template. If you want to use the same work-item templates etc for all your source code, put it all in one TFS project. Multiple TFS projects becomes a pain to manage over time and often is completely unnecessary.
One project named “MyApp” and then multiple branches representing each release. This article should give you a good overview of how to branch for releases:
http://visualstudiomagazine.com/articles/2010/09/14/tfs2010-branch-by-release.aspx