Branching By Feature – Team Foundation Server

Posted on Updated on

We have several strategies branching, Foncton life cycle of the product, the number of people, delivery mode etc.
We can mention: Release Management or CodePromotion ..
the objective of this bill is to address one of the most complex, it is the featuring.


An application may include multiple versions while having active or corrective maintenance needs. How to do ?

Parallel developments can be implemented by several teams. How a team without negatively impacting the other?

=> Set up branches developments

However it is essential to establish a branch management policy to avoid manage conflicting versions during development, to prohibit changes to the validated versions etc.

Setting up

The installation requires performing the following tasks:

1. Create a development trunk, the trunk is denominated XYZ

Note: the developments are not directly on the trunk, but are on a child branch called Service Pack.

2. Create from a new branch trunk daughter Service Pack denominated 1.YZ

Note: this branch will host the developments dedicated to the first feature.

Event Project: End of the first iteration (The development team estimates that the developments are completed).

3. Create from Service Pack 1.YZ a new child branch Fix denominated 1.0.Z.

Note: This branch contains all the developments dedicated to future bug fixes following the delivery of the target functionality.

4. Create From Fix 1.0.Z. a new child branch Release, 1.0.0 wording.

Note :

-This Branch will remain read-only.

-This Branch is the only branch deployed in production environment.

-This Branch represents an image of our delivery.

It makes it possible to trace the different deliveries made.

-It Allows for Rollback operations on version if the need arises (Avoid version conflicts files).

Event Project: Delivery of production

5. Deliver the branch Release 1.0.0 on the production environment.

6. Merge Service Pack 1.YZ to XYZ trunk

Note: At this stage all branches are at the same level of evolution.

Event Project: Bugs occurs on the Release 1.0.0

7. Treatment of bugs can be done in two ways as possible:

Judging that the version is not stable
-Conduct Fixes on Fix branch 1.0.Z.

-Create A new branch Release 1.0.1

-Livrer The Release 1.0.1 branch

-Fusionner Fix 1.0.Z to Service Pack 1.Y.Z.

-Fusionner Service Pack 1.Y.Z. to X.Y.Z. trunk

Note: You can iterate many times: 1.0,1, 1.0.2, 1.0.3 etc.

Judging that the version is stable and it is decided to fix bugs on a new delivery.
-Create From Service Pack 1.Y.Z. Fix a new child branch 1.1.Z

-Apporter Fixes on Fix branch 1.1.Z

-Create From Fix 1.1.Z. a new child branch Release, 1.1.0 wording.

-Livrer 1.1.0 branch

Event Project: An important new feature arrives

8. Create from the trunk a new child branch service pack, label 2.YZ

Reproduce the same organization …

Implementation in Team Foundation Server 11

Add the solution to Source Control

5 thoughts on “Branching By Feature – Team Foundation Server

    Roberto Gruppo said:
    October 12, 2012 at 2:01 pm

    J’aime la méthode et l’idée même de pouvoir “garantir à toute moment la maitrise du contenu du livrable”. Ce qui permet de travailler sur n’importe quel branche pour corriger les erreurs sans insérer des régression.
    J’aime aussi la possibilité de “suivre les branches sur plusieurs niveaux” (via la règle de nommages avec des variables X;Y;Z ou plusieurs A.B.C.D.E etc ) qui nous permet (mais ce n’est pas obligatoire) d’attribuer à chaque niveau des définitions projet. Par exemple, à chaque incrémentation de X une migration de données est nécessaire. Ou à chaque incrémentation de Y une nouvelle fonction ou lot est livrée etc.
    Je termine par quelque chose qui me tien à cœur : la gestion du niveau de visibilité externe aux équipes de développement. Dans cette méthode, on peut introduit facilement la notion de PUBLICATION DE VERSION X.Y.Z, c’est à dire la LIVRAISON d’une version X.Y.Z à l’extérieur.

    Like said:
    October 18, 2015 at 8:34 am

    I was just looking at your Branching – Team Foundation Server 11 « Aghilas Yakoub website and see that your website has the potential to get a lot of visitors. I just want to tell you, In case you don’t already know… There is a website network which already has more than 16 million users, and the majority of the users are looking for topics like yours. By getting your website on this network you have a chance to get your site more visitors than you can imagine. It is free to sign up and you can find out more about it here: – Now, let me ask you… Do you need your site to be successful to maintain your way of life? Do you need targeted traffic who are interested in the services and products you offer? Are looking for exposure, to increase sales, and to quickly develop awareness for your website? If your answer is YES, you can achieve these things only if you get your site on the service I am talking about. This traffic network advertises you to thousands, while also giving you a chance to test the service before paying anything. All the popular blogs are using this network to boost their readership and ad revenue! Why aren’t you? And what is better than traffic? It’s recurring traffic! That’s how running a successful website works… Here’s to your success! Read more here:


    libido steigern said:
    November 4, 2015 at 4:25 am

    Thanks for ones marvelous posting! I seriously
    enjoyed reading it, you are a great author.I will ensure that I bookmark your blog and will often come bazck in the foreseeable future.
    I want to enhourage yourself to continue your grerat posts, ave a
    nice afternoon!


    Bedroom Decorating Ideas said:
    November 7, 2015 at 7:54 pm

    Hey There. I discovered your blog the usage of msn. This is
    a really well written article. I will make sure to bookmark it and return to read extra of your useful info.
    Thank you for the post. I’ll certainly comeback.


    tubidy free music downloads for android said:
    December 3, 2015 at 3:31 am

    Magnificent beat ! I wish to apprentice whilst you amend your
    site, how could i subscribe for a blog website? The account helped me a
    applicable deal. I had been a little bit familiar of
    this your broadcast provided brilliant clear concept


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s