GIT ALM Field Guide

Using Git rather than TFVC, a field guide.

This collection of works will help you with moving from using TFVC to using Git for your x++ development. This page will have several chapters linked as they are published. However, how do you know which is the best fit for you, your team, your organization or your project? Let's take an inventory.

You

If you're reading this, I assume you're interested in getting away from TFVC for some reason, you're a technically focused individual, and you understand the differences between using Git and TFVC. 

Your Team

Your team should also be aware of what it takes to be successful in order to make a switch from TFVC to Git. They may need some additional training in order to get the the most out of Git. Developing and delivering with Git is a different experience. The end result is the same but I think the journey along the way is better. Your team will need to be on board to learn the new experience and experience some growing pains along the way.

Your Organization

Usage of Git for F&O / X++ isn't main stream for the most part. MSFT offers documentation as it relates to setting up and configuring TFVC but very little is offered for Git. MSFT does use Git internally. Additionally, lots of other languages work well with Git so before making the decision to use Git for X++, take stock of your organizations usage of version control systems. It's possible that Git is main stream in your organization, just not for X++. If Git isn't used for other internal projects of any sort, consider skipping TFVC all together and not learning about it. Just have Git be the standard.

Your Project

Whether you go with Git or TFVC, you'll have to live with it long term, unless you're willing to put in the work to change it. Consider who will be taking ownership of the DevOps / GitHub project after implementation. If you're a consultant, you'll want to keep this in mind as the client may not have all the technical skills required to be successful with Git after go-live. 

The Decision

I'm a fan of using Git. To me, the way work items are managed makes sense. You can also hook in automated testing based on a variety of actions. However, if you decide TFVC is for you, that's ok too. TFVC has some similar offerings. However, TFVC is complete as far as MSFT is considered so it won't be getting any new features, only fixes for bugs going forward. In this field guide, we'll walk through Git for F&O and you can decide.

Conclusion

I'll be using Git going forward as much as i'm allowed. Sometimes the decision on version control systems isn't up to me. When given the option, I'll be using Git. As I learn more, I'll continue to update this field guide with the new things I learn.