TFS,SVN和GIT有什么区别?

时间:2010-04-07 03:22:50

标签: visual-studio svn git version-control tfs

我使用Microsoft Visual SourceSafe进行版本控制。我想改变这种方法,并使用更新的软件来完成这项工作。这三个应用程序有什么区别?哪一个更好?

这些解决方案是否与visual studio集成?

5 个答案:

答案 0 :(得分:112)

TFS是应用程序生命周期管理解决方案,SVN和Git仅是源代码控制。

TFS进行源代码控制以及问题跟踪,文档管理,报告,持续集成,虚拟实验室测试等。

TFS的源控制& SVN是集中的源代码控制,Git是分布式的。

关于TFS与SVN的Stackoverflow有很多讨论。

TFS是最紧密集成到Visual Studio中的。

SVN有一些第三方选项可以集成到Visual Studio中,它们非常好用,但没有像TFS那样紧密集成。

Git具有GitExtensions,允许在Visual Studio中进行低级别的集成。

答案 1 :(得分:9)

更好的是一个大讨论,但是你必须考虑成本。

SVN是免费的,而TFS则不是。然而;如果您通过MSDN订阅获得Visual Studio并且此版本为high enough level,那么您将在发布时通过MSDN订阅下载免费获得TFS2010。这可能是促使平衡的一个因素。

至于与Visual Studio的集成,您无法击败Team Explorer获取TFS。但是,我已经将Anhk用于SVN并且运行良好。我认为其余部分已经说过: - )

希望这有帮助。

答案 2 :(得分:5)

问题相当陈旧,但万一有人偶然发现:自2013年1月以来,git已被整合到TFS中(公告:http://www.visualstudio.com/en-us/news/2013-jan-30-vso#git支持)。这意味着团队现在可以使用git作为源代码控制工具(而不是内部" TFS版本控制系统,而不是旁边),同时仍然使用其余的TFS进行活动作为持续集成,问题跟踪等。

MSDN上的原创讨论:http://blogs.msdn.com/b/visualstudioalm/archive/2013/01/30/getting-started-with-git-in-visual-studio-and-team-foundation-service.aspx

StackOverflow有大量相关讨论(https://stackoverflow.com/search?q=tfs+git),不能指向任何特定的讨论。

答案 3 :(得分:3)

我只能说SVA的Visual Studio集成。我同时使用了VisualSVNAnkhSVN。它们都具有非常紧密的集成,允许您通过解决方案资源管理器菜单执行各种操作,就像通常使用VSS一样。 Ankh的版本2+(我目前使用的版本)对我来说非常稳定,并且比旧版本更好。

这看起来像使用Git with Visual Studio的相当详细的讨论。

答案 4 :(得分:3)

这是对其他答案的补充,而不是一个完整的答案,因为Michael Shimmins对我所说的大部分内容感到满意

TFS(特别是2010年)在实现源控制技术方面非常平易近人,您可能非常难以使用VSS执行这些技术。使用TFS进行分支和合并比使用SVN更容易启动和跟踪。从用户交互的角度来看,我会对Git说同样的话,但这些工具会慢慢变得更好。

如果您花费大量时间,Git是一个很好的工具,社区采用的技术作为标准实践非常值得在任何版本控制系统中付出努力。你仍然会在>团队中与SLN和CSProj / VBProj文件发生冲突。 2.这是这些文件的结构和管理方式的结果。