As I try and make changes in our environment and enforce best practices for development in my own work as well as that of other team members, one of the topics that had to be made was what path we would take for source control. Since we are in the process of rolling out Sharepoint 2010, the architecture team and I decided to go the route of Visual Studio Team Foundation Server 2010 as our primary source control system. However, after a week of working with it, I have to say that its not very friendly if you aren’t using Visual Studio 2010.
To start off with, if you use Visual Studio 2008, you have to perform the installation following a specific set of steps for Visual Studio 2008 to be able to communicate with TFS 2010. After installing Visual Studio 2008 I had to install SP1 for Visual Studio:
Microsoft Visual Studio 2008 Service Pack 1 (Installer)
Then Install Team Explorer:
Visual Studio Team System 2008 Team Explorer
Then reinstall Service Pack 1 for Visual Studio.
Then Install the forward compatibility update:
Visual Studio Team System 2008 Service Pack 1 Forward Compatibility Update for Team Foundation Server 2010 (Installer)
When I did that, I had to manually input the URL to the TFS Server and project to add it, like the below image.
However, this was not the simple end to my woe’s in dealing with TFS 2010 from VS 2008. It turns out that even when setup following these steps, VS 2008 with TFS Explorer 2008 can’t create new Team Projects. You also can’t integrate SQL Server Management Studio with TFS 2010 unless you also install the TFS Explorer 2010 and the MSSCCI Provider. Even then this didn’t work out to allowing me to create usable projects inside of TFS 2010 for existing databases, so I reverted to installing the Power Tools for TFS 2010 and making use of the Windows Explorer Extensions for TFS 2010 that are similar to how Tortoise works with SVN for source code. This at least allowed me to script all the objects out to individual files and check them into source control for future controlled usage.
So what’s my problem with this? First, the documentation for this just sucks. I found most of my answers on the forums, or through trial and error, and that’s not good. I have yet to find an actual BOL topic that explains the steps needed to setup VS 2008 to communicate with TFS 2010, or the associated limitations, like not being able to create new team projects from VS 2008 when working with TFS 2010. If you try to do this you will get an error similar to:
TF30172: You are trying to create a team project either without required permissions or with an older version of team Explorer. Contact your project administrator to check your permissions or to determine how to upgrade Team Explorer.
However, you can’t use Team Explorer 2010 with Visual Studio 2008, so there is a major disconnect between versions that exists even when using the forward compatibility update. In the next few blogs I’ll go over how exactly I am progressing with TFS 2010 and integrating it with SQL Server Management Studio and Visual Studio 2008 to figure this all out.