Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Issues with Visual C++ 2013, TFS & property sheets

Tags:

People also ask

How do I connect TFS to Visual Studio 2013?

Launch Visual Studio 2013, click on Team and then click on the Connect to Team Foundation Server option. From the Team Explorer window, click on Select Team Projects to open the server connection window. Click the Servers button. Click the Add button.

Is Visual Studio 2013 free?

Visual Studio 2013 and Other Products If you don't have a Visual Studio Subscription, you can create one for free by clicking on “Create a new Microsoft account” on the login page.


Background

I am currently working on a Visual Studio 2013 solution, contining ~190 C++ projects. Since they are all modules of the same ecosystem, they have lots of properties in common (common linking options, binaries output location, post build steps, etc).

As such, we have created a set of property sheets, enabling us to maintain these properties in a centralized way.

This works fine.

Our team uses TFS as an SCM, and the Visual Studio integration with TFS for property sheets seems to be lacking (or maybe it's just buggy or unconfigured).

The problems

  1. When editting a property sheet (that is present in TFS), Visual Studio attempts to save it, which fails with an error message. Clicking on Apply/OK again, will correctly store the changes in the PS in memory, but the property sheet will not be saved until the solution is closed (performing a checkin doesn't see the changes causing developers to make two commits for a change, resulting in non-transactional commits).

  2. If I perform a checkout from within the Solution Explorer, property sheet changes are never checked in; they always end up in the "Excluded Changes" in the TFS commit window, and cause a lot of problems when developers are not attentive to this.

  3. Scenario: developer A creates a feature branch, adds a project with a property sheet, does a few commits, then merges back into the main branch, deletes the feature branch and everybody gets the code. Then we discover that the property sheet was never added in TFS (visual studio doesn't add it by itself when it's added to the project) and since developer A deleted her local branch files, the file is lost; This means lost work and efforts made to write the PS again.

The question(s)

What can be done to customize TFS treatment of various file types (like property sheets)?

Are there any tools for Visual Studio or TFS that improve/automate this integration? (I know SO is not big on tool recommendations, but I am more interested in finding out if the functionality exists at all, rather than getting speciffic tool names).

Thanks.