53 people following this project (follow)

TfsVersioning Version 1.5.1.0 Released

Versioning is part of Visual Studio projects within the AssemblyInfo file. It’s easy to update the version once but how many people actually and effectively manage an application’s version through this mechanism?  I don’t actually know but I would bet that most only do it sporadically and eventually give up. Manual editing of the AssemblyVersion and AssemblyFileVersion is much harder that it needs to be.

The goal of this project is to create a way to modify the automated build process of TFS 2010 so that versioning is automatic while giving the user the flexibility that they need given the project’s process requirements. I’ve done this in the past using the angle-bracket programming paradigm of MSBuild – powerful but hard. This time I took advantage of the WF capabilities of TFS Build.

This solution provides versioning using patterns against the Assembly Version and Assembly File Version and includes:

  • Automated incrementing of the version values
  • Centralized version management of any number of solutions
  • Mechanism to tie an assembly back to the specific build definition as well as the source code that built it
  • Automated check-in of the assemblyInfo files
  • Works on C#, VB and C++ projects
  • Operates as an addition to the TFS 2010 build workflow (WF 4.0 XAML)

Example of the updated TFS 2010 Build Definition template (Version 1.5.0.0) shown below:

  

Example of the properties dialog from (W7) Windows Explorer

 

Example of the Version Reporter verifying the versioning information after being built with the TfsVersioning workflow:

image

image

NuGet Package Developers...TfsVersioning works very well with the recently released NuGetter Automated Build extensions (also on CodePlex).

Last edited Aug 3 2011 at 6:48 AM by marknic, version 14