Implementing Team Foundation Server in your Microsoft Dynamics NAV environment often starts with version control. Since NAV does not have a native integration with TFS it gives some challenges. The most important one is: what is the best structure for my source code in Team Foundation Server? The Branching Guide of the ALM Rangers is a starting point for the proper strategy.
In Team Foundation Server, your source files are stored in a folder structure. This folder structure is created at the server. While working with the source files, however, a local version is used. The structure is important since this will be used throughout the development process. What is a good practice for such a structure?
I would like to share the branch strategy we implemented in our NAV development teams. In our development team we only develop standard solutions comprising both NAV and .Net technology. There are two formal release moments per year which we have to support. We are following the scrum methodology with an iteration interval of two weeks. New features are often developed in parallel. This is our branching strategy:
In Team Foundation Server this results in the following source control structure:
In the past two years I’ve seen different branching strategies applied on NAV development. One thing became clear: keep it simple! There are costs related to each branch level since each level has to be maintained. Costs in the sense of complexity and time. Check out the Branching and Merging Primer for a number of branching Anti-Patterns that should be avoided at all costs.
Some best practices:
Other Microsoft Sites
I'm a Customer
I'm a Partner
Follow Microsoft Dynamics