Основное различие между этими двумя системами заключается в том, что TFS - это централизованная система контроля версий, а Git - распределенная система контроля версий.
С TFS репозитории хранятся на центральном сервере, и разработчики извлекают рабочую копию, которая представляет собой снимок кода в определенный момент времени. С помощью Git разработчики клонируют весь репозиторий на свои машины, включая всю историю.
Одним из преимуществ наличия полного репозитория на компьютерах вашего разработчика является резервирование в случае смерти сервера. Еще одним приятным преимуществом является то, что вы можете перемещать свою рабочую копию назад и вперед между ревизиями, даже не обращаясь к серверу, что может быть полезно, если сервер не работает или просто недоступен.
Для меня настоящее преимущество в том, что вы можете фиксировать наборы изменений в своем локальном репозитории, даже не общаясь с сервером и не вызывая потенциально нестабильные изменения в вашей команде (то есть, нарушая сборку).
Например, если я работаю над большой функцией, мне может потребоваться неделя, чтобы написать код и полностью протестировать его. Я не хочу регистрировать нестабильный код в середине недели и прервать сборку, но что произойдет, если я приближаюсь к концу недели и случайно уволил всю свою рабочую копию? Если я не совершал все это время, я рискую потерять свою работу. Это не эффективный контроль версий, и TFS подвержена этому.
С DVCS я могу выполнять коммиты постоянно, не беспокоясь о нарушении сборки, потому что я фиксирую свои изменения локально . В TFS и других централизованных системах отсутствует концепция локальной регистрации.
Я даже не думал о том, насколько лучше ветвление и слияние в DVCS, но вы можете найти множество объяснений здесь, в SO или через Google. По опыту могу сказать, что ветвление и слияние в TFS не очень хорошо.
Если аргументом для TFS в вашей организации является то, что он работает лучше в Windows, чем в Git, я бы предложил Mercurial, который отлично работает в Windows - есть интеграция с Windows Explorer (TortoiseHg) и Visual Studio (VisualHg).