Vývojáři mají své oblíbené nástroje, své jazyky, své styly. Každý má své zkušenosti. Také projekty jsou různorodé a každý chce své. S Team Foundation Serverem 2013 můžete zapojit profesionály, jejichž doménou je Java, Android, IOs, i ostatní vývojáře v jiných nástrojích. Přitom dokážete udržet efektivitu, agilitu i bezpečnost podle potřeb projektu daného typu.
Jedním z klíčových úkolů vývojářů, zejména pokud pracují v týmu, je udržovat svoji bázi kódů, aby s nimi šlo dobře pracovat, porovnávat různé verze, upravovat je a spolupracovat s ostatními vývojáři. Správa zdrojových kódů a jejich verzování a větvení je poměrně složitá a kritická oblast týmové spolupráce. Obecně existují k této problematice dva přístupy: centralizovaný a distribuovaný. Jejich rozdíl lze přirovnat k rozdílu mezi architekturou client-server a P2P. Centralizovaný přístup preferují korporátní týmy, decentralizovaný vyhovuje komunitním projektům.
U centralizovaných systémů je kompletní balík zdrojových kódů včetně historie na společném serveru. Na klientech, tj. na počítačích jednotlivých vývojářů, bývá jen poslední verze a odpovídající soubory. Výhoda je ve velmi dobrém centrálním řízení, celkové bezpečnosti, i velké projekty obsahující objemná metadata mají relativně malé nároky na klienty. Nevýhodná je nutnost být často připojen k serveru a složitější práce s mnoha větvemi. Představitelem centralizovaného přístupu je původní Team Foundation Server VC nebo Subversion.
Decentralizované distribuované systémy správy verzí jsou založeny na tom, že klienti mají u sebe většinou kompletní zdrojové kódy včetně historie, změny ukládají lokálně do svého úložiště a později je zpřístupňují ostatním nebo si změny vytahují od nich. Výhodou je off-line práce, rychlé lokální uložení, velmi silná podpora větvení, na které je vlastně založen celý systém. Mnoho OSS projektů a jejich nadstaveb využívá distribuované úložiště. Nejznámějším typem je Git.
U velkých komunitních projektů se výhody distribuovaných systémů využijí, naopak u komerčního projektu vyžadujícího striktní bezpečnost a kontrolu se může hodit centralizovaný systém. Nu, a od verze Team Foundation Server 2013 si může každý zvolit, jaký typ úložiště bude chtít používat v daném projektu.
TFS 2013 pracuje nově i jako Git Server repository. Veškerá data jsou stejně jako u TFS VC repository umístěna bezpečně v MS SQL Serveru, provázána s ostatní infrastrukturou TFS, zálohována TFS Backupem atd. Mnoho vývojářských nástrojů je pro práci s Git repository přizpůsobeno. Pokud využíváte Visual Studio 2013, uvidíte některé změny zejména v Team Exploreru i vy. Vývojáři v ostatních produktech a nástrojích se samozřejmě mohou účastnit společného projektu.
Na www.visualstudio.com si zkuste založit projekt a poznejte sami výhody i nevýhody obou variant na vlastní kůži.