Category name:Team Foundation Server

Fixing a Branching Mess

At work we never really had a branching strategy. This resulted in a big branching mess. People were either not branching at all or were making it up as they went along.

Now we have chosen to follow guidance given at The Basic Branch Plan should work fine for us in most cases. This plan dictates that our branch hierarchy should look like this:


However, our branch hierarchy looked more like 2 separate trees or just a single column like this:


That’s not good.

I came across the option to reparent a branch from:

However, when I tried this I saw that I could not select certain branches as a parent to other branches. The solution to this is the same as fixing branches after a migration. Do a baseless merge! This is nicely described in this post,  step 2:


And look at our branch hierarchy now:


Visual Studio Team System 2010 and Team Foundation Server 2010: already in love with all the new features!

An exhausting day at PDC… Here are the sessions that I did:

  • Keynote: Windows Azure
  • Microsoft Visual Studio Team System: A Lap Around VSTS 2010

  • ASP.NET 4.0 Roadmap

  • Team Foundation Server 2010: Cool New Features

  • WF 4.0: A first look


I really love the new features of VSTS and TFS; I can hardly wait to start using them…


I will not go into a lot of detail here, instead I will highlight a couple of the main features and hope it will incourage you to go and view the session online.


Microsoft Visual Studio Team System: A Lap Around VSTS 2010

Cameron Skinner put it real nicely with 4 key points all getting rid of things we do not like as Developers. VSTS 2010 is focussed on making the developers happy…

No More ‘No Repros’

Basically focusses on getting more complete data from the testers to make it easier to sea where/why/when a bug occured. What do you think of a Manual Test Runner with a recorder to capture a video which can be viewed by the developer? Or what about a System Info tab in the workitem? Or a Debug History window, where you can ‘debug’ the code on the server from the nightly build as if it were happening live?

These things really are going to make the developers life a lot easier.

No More Broken Builds

This is a developers dream come true: being unable to break the build. No more buying cake for the team…

Made possible by:

Gated Check-in, which is more a TFS feature than a VSTS one but who cares. If set up on the server, you cannot check in changes if these changes break the build.

Test Impact Analysis, which is a feature that analyses a changeset to see which test is most likely to be affected by the change, so you can start with that test.

No More Butterfly Effects

This is all about preventing code rot.

Builds may fail by a violation of your architectural design. You can make a .layer diagram and the actual solution is tested against this design.

The Architecture Explorer generates a diagram of the actual architecture of the solution and you can drill down into great detail in the diagram as well as jump to the code.

A sequence Diagram can also be created, making it easier to see where the butterfly might cause a storm…..

No More Regression

There is a new kind of test: The CodedUI test with a recorder for Web and it will be there for WinForms as well as WPF. Silverlight is regretably not planned yet.


Team Foundation Server 2010: Cool New Features

Protect Code Quality

Gated checkin

Buddy Builds or private builds: run on the server but without checkin

Workflow based build creation. Basically something like finalbuilder.

Parallel build tasks

Parallel Development

Branches have become real entities instead of folders and they are hierachically linked. The relations can be viewed visualy as well.

You can track changesets, workitems and annotations through merges; again with diagram.

Rollback is finally here..

Managing Projects

New excel workbooks, excel report generation from Query.

Workitems link and hierarchy improed

Query improvements