BK's Thoughts Team Foundation Server

In my wandering I have discovered Microsoft's Team Foundation Server. As I write code at home TFS appears to be an ideal solution. I can create a single user within their website and not have to deal with managing my own repository. One place to begin learning about TFS is here: Get Started For Free

The explanation starts well. Users like myself can establish and account for up to five programmers without paying a fee. In my case, when I learn how to use this, I will recommend it for installation at work. The plan there is to purchase a full up license and install it on our systems that must be completely isolated from the outside world.

However, this has not worked out so well. After many attempts I have been unable to figure out how to use it. Following the procedure and steps on their web page leads me in circles and does not work out well. I have posted multiple questions on their forums. While some posts have resulted in useful answers, critical items remain unanswered.

Getting Started

How do I get started? When following the instructions found at the Get Started For Free link, I find myself in a circular path of links and pages, none of which outright say "Do this." The series of pages visited becomes a bit complex. The steps are documented in a Microsoft Word document with screen captures. Here is a link to that document I wrote.
TFS Get Started
It is saved with version tracking on. Hopefully someone will say: In step X do this instead.

Here is a link to the latest post in the msdn forum that provides that link to the reader. Here

Map an Aritrary Directory into Source Control.

Visual Studio provides a method in which code from outside of a solution can be incorporated into a project. To access this feature, display the Solution Explorer and right click on a project. Select Properties. On the left side select C/C++ and At the top is Additional Include Directories. Edit in the location of your external source code. OK out of the dialogs.

Back in Solution Explorer, right click on Header Files or Source Files and add an exiting item. Navigate to the new item in the just selected directory and add it. Now multiple solutions and projects can share that code.

To make this discussion more readable, I present the name and directories used on my computer. The solution is found here: E:\CODE\Common_Code_Test_Utilities. This is a solution that currently contains one project: Test_C_Log_Writer.

Directory E:\CODE\COMMON_CODE contains the files C_Log_Writer.h and C_Log_Writer.cpp. Together these two files constitute a class of the same name. It is a utility that will write data to a log file. I use it in multiple projects. It does not contain a solution, just the various utilities that can be used in any solution.

I started a thread on this particular topic here: Here. The title is: map an arbitrary directory to TFS in the cloud The replies received have NOT provided a method to do this. In my son so humble opinion, this is a Major Shortfall of TFS.

Disassociation with TFS

At some time we will have a need to disolve the relationship between our projects and the Microsoft Team Foundation Server. I avoid contrived situations and go directly to the point. I started a thread on this topic Here. The title is Remove all source control references from a solution / project. The first reply provided some advice and referenced two links. One was a thread from a forum at stackoverflow.com and the other is blog entry from www.falconwebtech.com. They both discussed editing the dot sln file to remove the TFS reference. The latter linked to an executable program found on codeplex.com. I ran it and it complained about an unhandled exception. The link from my solution/project to TFS was not disolved. When that solution is opened it continues to complain and puts this notice in the Output window:

The mappings for the solution could not be found. The active solution has been temporarily disconnected from source control because the server is unavailable. To attempt to reconnect to source control, close and then re-open the solution when the server is available. If you want to connect this solution to another server, use the Change Source Control dialog.

Both the links refer to a solution outside of TFS. The end result is that TFS has no method to remove the connection between a solution on your computer and the TFS server. I find this to be a significant omission.


Dear reader: If you understand my problems and know how to resolve them, please post in the MSDN forum or send an email to me as noted here. For email, send to "online" followed by the at symbol and the domain of this web page, bkelly dot ws. A short and very simple email address. The reader may download the MS Word file, edit, and send that. I will post results here.

9 March 2014