Using the TFS as a source control repository for SSMS projects.

Vishvvas
Posted by in Sql Server category on for Advance level | Points: 250 | Views : 36348 red flag

This article explores the feature (of SQL server tools) of adding the projects into source control repository like TFS.

Introduction and background

TFS is one stop solution for source code repository, issue tracker, agile and CMMI implementation. Source control options for DB and database objects has been a challenge for quite some time now though there are many options available.

As TFS is mostly the choice for .NET projects, it becomes obvious that for DB too TFS needs to be used so as to have all source code in one environment and there is consistent way of making changes to such source code.

VS 2010 offers a type of project called “Database project” which includes

  1. Data Generation Plans
  2. Schema Comparisons
  3. Schema Objects
  4. Scripts

This kind of project can be put into source control as other project like website, class library etc. We would see this in different article.

Another option available is to create projects in SSMS (SQL Server Management Studio) and add to source control. We would discuss this option in details in this article.

This write-up includes the TFS plugin for SSMS (SQL Server Management Studio) and its consequent usage as addition into real project in NASCO environment would create a lot of issues, the further part is not explored.

Description

Let’s follow 2 step action where firstly we would set the plugin and configuration settings and then create a project in SSMS and see the simple menu to put into the TFS repository.

Setting the Plugin and configuration

The plugin available for SSMS is called as “Team Foundation Server MSSCCI Provider” which is available at http://www.microsoft.com/en-us/download/details.aspx?id=12128. This needs to downloaded and installed on the developer machine. Once it is downloaded and installed, it would need to be configured.

Once the plugin is selected as shown above then the environment and Plug in Settings sub option needs to be provided under “Source Control”.

Clicking on “Environment” sub option for “Source Control” pops up following screen. Different options like “Visual SourceSafe”, “Independent Vendor” and “Custom” are available. Pl. choose “Independent Vendor” for our exercise.

Choosing the TFS in “Plugin Settings” and enter login id as demonstrated below.

Setting Up the project
 

We are done with setting up the source control for SSMS projects. Next step is to create such project and put such project in chosen repository i.e. TFS for this exercise.

The source control operations can be seen once we create project and add such project to source control. Create a SQL server scripts project executing the following steps.

Different templates like “SQL Server Scripts”, “Analysis Service Scripts”, “SQL Server Compact Edition Scripts” are available and we would explore “SQL Server Scripts”.

Such project can be added to source control as shown below.

Click “Add Solution to Source Control” and following prompt appears where in the location of TFS server and TFS Project needs to be provided.

Once the TFS server details are provided, the credentials for TFS needs to be supplied in following prompt.

Once the authentication is accomplished, the details of projects on TFS server are seen as following and the target location is chosen the SSMS projects is added into TFS.

Yes, we are done with addition of SSMS project into TFS and we would be able to perform the operations like commit, shelve etc.

Summary

The SQL projects in SSMS can be configured to reside in source control repository. For TFS the, the plug in tool can be employed for SSMS which helps to connect to TFS and store, change the source code for the same. Through SSMS the database project which is created through visual studio can’t be opened and hence as of now with professional edition, one can use SQL Server Script through SSMS.This looks like better option than database project if only the source control mechanism is considered.

Red Gate’s offering SQL source control actually is a connector for different repositories like TFS, SVN.

This can really be helpful for versioning of scripts when database is in production. Such versions can be synergized with the front end code version or it can carry its own version. This would definitely solve the challenges
in maintaining the different scripts and versioning thereof.Red Gate’s offering SQL source control actually is a
connector for different repositories like TFS, SVN.

Page copy protected against web site content infringement by Copyscape

About the Author

Vishvvas
Full Name: Vishwas Sutar
Member Level: HonoraryPlatinum
Member Status: Member,MVP
Member Since: 5/30/2011 2:13:10 AM
Country: India

http://www.dotnetfunda.com
Extensive and rich experience across gamut of technologies and programming languages like PB,VB,C++,VB.NET, C#, Classic ASP,ASP.NET, ASP.NET MVC.

Login to vote for this post.

Comments or Responses

Login to post response

Comment using Facebook(Author doesn't get notification)