正如其他人指出的那样,TFS 为您提供了比 SVN 以项目管理等形式提供的更多功能。两者都使用过,并与非常大的公司合作实施 TFS,这是我的两分钱。
1) 如果您使用的是 TFS 2005,请升级到 TFS 2008。您会感谢我的。TFS 2008 中有大量改进使其变得可行。
2) 如果您使用 Visual Studio 并且想要集成 IDE,请使用 TFS。我使用了 SVN 集成并且几乎总是退回到使用 TortoiseSVN。
3) 如果您喜欢将帐户与 Windows 身份验证集成的想法,请使用 TFS。从那一端开始的可管理性很好。SVN 可能有钩子——我不肯定,但如果你喜欢 GUI 驱动的管理,TFS 很难被击败。
4) 如果您需要跟踪指标或有更简单的方法来实施诸如签入策略之类的事情,请使用 TFS。
5)如果你的人如果不是 MSFT 就不会实施它,那就选择 TFS。
6) 如果你做的不仅仅是 .NET(Java 工作、Eclipse 等),请使用 SVN。是的,有非常好的产品(比如 Teamprise)可以很好地与 TFS 配合使用。但除非其他语言只是您商店的一小部分,否则请坚持使用 SVN。
除此之外,两者的 SCM 功能大致相同。它们都进行分支和合并,都进行原子签入,它们都支持重命名和移动。我认为对于刚开始使用分支和合并概念的人来说,让分支在源代码管理资源管理器中可见是很好的。
TFS 真的没那么贵(也许是 1200 美元?)。与 SVN 相比,它也许是。与报告服务和 SharePoint 的集成很好,但同样,如果您不使用它,那也没关系。
我想说的是下载 TFS 的 180 天试用版并试一试。并排运行试验。我想无论你走哪条路,你都会很开心。