We help IT Professionals succeed at work.

TFS and GIT vs Perforce P4V for Source Control


Has anybody used a combination of 'TFS/GIT' and Perforce for source control that can give me high level comparison of the two or redirect to few are articles which highlight elements of difference that are relevant for developers.

Any help is welcome thanks.

Thank you.
Watch Question

Senior Data Architect
I'm not super-familiar with the different platforms, but I think the TFS vs. Git question can be answered with "do you want centralized source control of a distributed system?" If you want a centralized source of truth, then TFS may be appropriate, where Git is a distributed system (with the implications to merging/branching that entails). This article has a good comparison of the two products:


I'm still a huge fan of centralized source control (we use TFS at our company, and I use Sourcegear Vault privately), but I'll admit that I've never had to do much with branch/merge - we generally have one developer working on code at a given time, or even when there are multiple developers, they're not stepping on each other and are coordinating who has what feature.

With a distributed system, it makes doing development in isolation (and later merging changes) much more straightforward (so I'm told - again, I've not done it). When it comes time to merge your changes, the system treats them as discrete sets of code modifications that can easily be applied both directions (changes you've made into the repository and changes others have made into your local copy), instead of treating it as a version conflict (as it does in the centralized/TFS world).

It's also worth noting that TFS is a complete ALM (Application Lifecycle Management) tool, including project management, bug tracking, collaboration, build, continuous integration, and deployment components, where something like Git just does source control. You can easily augment Git with other ALM tools like TurtleALM (and as of TFS 2013, you can actually tell TFS to use all of its ALM components on top of a Git repository, so you can combine both if that's your preferred flavor), but TFS presents a single location for all those tools, where you'll end up choosing and implementing a component for each feature if you got with other products that handle just a single aspect.

Pretty much all of my experience is with TFS and Sourcegear Fortress, both integrated ALM with central source control, though I'm trying not to be biased - there are reasons you'd choose each, and to be honest, I don't think one is better than the other beyond what the developers are familiar with. If I've missed your question, though, please let me know and provide some more detail about what you're looking for and I'm happy to clarify.
ZackGeneral IT Goto Guy


Thank you, thats enough for me to go on.