The Git Hole
I consider myself a calm person with plenty of tolerance, I believe in productive discussion and love it – Part of my job as a consultant is to talk with Teams and explain them why you should choose a specific product over another, in 99.9% of those meetings there is one guy that don’t like the change (No One Like Changes) and you need in a calm way to explain and show him the benefits of the new tool – Forcing someone to do something is never a good thing.

But sometimes there is no wining side in a discussion, you might say discussion are not about winning is about Accepting and Understanding, but Imagine yourself this scenario - You are a religious man, how about a discussion with a non-religious about “Does God Exists”?
You can throw billion argumentation's but nothing will matter because in this discussion there is not Logic but Faith and Emotions, so you can spend hours but in the end the non-religious will not believe and the religious will.

Even when you talk about Technology there is emotions if you like it or not – If you not believe me you should read some theory's from Lawrence Kohlberg, Carol Gilligan and Sub Judice, (Latin for "under judgment"), I hope in this discussion you’ll understand you are not the first and for sure not the last how think he can control his emotions when you make a choice.
So why I told you all about that? Lately I’ve being asked about why TFS and Not Git?
First I think Git is a wonderful version control system and I even use it for several projects, I use SVN and several other Open Source Version Control Systems.

The reason sometimes I’m using other systems than TFS, is for specific projects:
- Project I do by myself and I don’t need work assignment or project management.
- Projects that doesn’t have Testers, Product Manager or anyone else besides Developers.
- Projects that doesn't care about team collaboration and think that Email is a great solution for tracking the team.
- Project that doesn't have the money to buy TFS (Dream Spark)
The question itself implies that the person didn’t understand what is TFS, and just think about saving his praised code.
Team Foundation Server – This is a suite of development tools all within a single platform
The idea of one platform for the entire team is brilliant. Microsoft created tools for each individual position on the team; there are tools for Requirements Management, design tools for Architects, Developer tools and of course testing tools ranging from manual test to automation and load testing. All is this is now under one platform. When the entire team works on the same platform the collaboration and integration become easy and fluent, collecting data to generate reports no longer needs to take a lot of time. The team’s efforts are now integrated as part of the platform. Synchronizing between different tools is no longer necessary because all are working together in one place.
So after I explain what is TFS the person told me –> but TFS doesn’t have distributed version control.
SO WHAT? Git doesn’t have Bug Management, Load Testing, UML Designer, Build Machine and a lot more. It’s not all about Code!
So developers think that everything about the Product is up to them – and they are wrong! the product is something that everyone is part of, the Project Manager, the Business Analysis, the Developers, Tester and more.
Sometimes one less feature is best for the Team than one extra feature just for you!
Now, let’s go back to the discussion, even after I explain TFS the person still want Git (although his company bought TFS) and in that point I understand that this is the same discussion as “Does God Exists” because the person has HMS (Hate Microsoft Syndrome) and this is what he believes.

Is there a cure? I really don’t know. But I do know that Emotions overcome common sense and facts.
I Love Microsoft and I really Love TFS, but TFS is not the only tool at the market today that gives teams the ability to work together under a single platform, there is IBM Jazz or HP ALM Solution, but with not doubt TFS is mature and most popular ALM tool today and I will continue recommend TFS and I’ll not surrender the HMS!!!
God, give me the strength to accept the things I cannot change,
Courage to change the things I can,
and the Wisdom to distinguish the one from the other.
Thanks