说明:由于博客园的限制,之前转发的MVP卢建晖的文章不能放入首页,但我会继续转发,感兴趣的同学请到我的博客首页查看。


博主:

翻译自微软Visual Studio ALM产品组老大Brian Harry 的博客文章 The future of Team Foundation Server Version control.

最近关注微软开发工具的同学一定都对TFS有一定的了解,从2013版本开始,TFS中提供了2种不同的源代码管理方式,TFSVC和Git。随着Git的大规模流行,好像TFSVC变的越来越不重要了。而实际情况远非如此,就博主自己的经验而言,虽然互联网公司,创业团队对于Git 非常钟爱,但是对于许多传统行业或者大型团队,使用集中式的TFSVC仍然是他们的第一选择,这里面当然有很多诸如安全,管控的问题;但是现实的情况是不能忽视的。

关于 Brian Harry
Brian Harry是微软院士,同时也是Team Foundation Server产品组的总经理。

译文:

我之前也针对这个问题写过文章,但是这个问题仍然挥之不去。经常有人问我“TFSVC是否已经死掉了?”,我觉得我必须不停的回答:不,不会!

我们在TFS2013中加入了Git的支持,因为我们觉得集中式(CVCS)源代码控制和分布式(DVCS)源代码控制都是业界非常需要的功能。我们在Git上的投入是相当大的,这是由于我们必须提供与TFSVC同等的功能。大家的误解当然是有一定的原因的。我们最近谈了很多的Git,非常多。业界也对Git非常关注,非常。而且,如果你关注微软最近的走向,你会发现微软内部越来越的团队在使用Git。我自己的很多团队也转向了Git。这些都是事实,很多人就此认为我们将会摒弃TFSVC,但我们不会。

我们大多数的客户仍然在使用TFSVC,我们对此非常重视。微软内部也仍然在使用TFSVC。在Visual Studio Online (VSO)上新创建的项目,大多数都选择使用TFSVC。毫无疑问,我们看到了转向Git这一趋势,同时我也认为这种趋势将会继续。在以后的几年中,我觉得Git的使用比例会超过50%,这很有可能。无论如何,仍然有几十万(接近百万)的项目在使用TFSVC。因此,TFSVC在很长的一段时间里仍然非常的重要。

好吧,以上都是个人的观点,下面我们看一些事实:

TFSVC的核心非常成熟,有非常大规模的团队在使用TFSVC,它非常的稳定。我们最近更加关注TFSVC的核心功能,比如:

  1. 我们最近大幅改进了我们的Web界面,加入如浏览器内编辑,签入,删除等功能。这些都是在TFSVC上。
  2. 我们为TFSVC添加了“欢迎页面”,基本上就是一个基于TFSVC的wiki页面。(博主:使用markdown语言的wiki页面)
  3. 我们在CodeLens上支持TFSVC,而且一些功能只在TFSVC上可用,比如:“分支变更影响”指示器的功能。
  4. 下一代的构建系统Build.vNext支持TFSVC。
  5. 全新的代码搜索功能,虽然预览版只支持Git,但在正式发布版中会提供对TFSVC的支持。
  6. 代码评审功能的改进,包括多次迭代式评审,web支持,Visual Studio中的代码评审意见注释等等。这些都支持TFSVC。
  7. 我们最近在支持Mac/Linux环境的跨平台Team Explorer Everywhere (TEE)工具上改进了对超过260个字符的支持,这也是在TFSVC上。这是社区中经常被吐槽的问题。(博主:TEE是Eclipse的插件,提供Eclipse中连接TFS进行团队开发的能力)
  8. TFSVC项目的改名操作,看上去是个小功能,但其实底层做出了非常大的改动。
  9. 我们正在开发同一项目中2种源代码控制并存的支持,这也需要对TFSVC进行修改。

当然还有很多我现在没办法分享给大家。大家可以看到,TFSVC没有死,而且活得很好,我们还在这上面大规模的投入,并且会继续投入。对于用户来说,你需要根据自己的实际情况选择最适合你的工作方式,我们会一如既往的支持你。

希望本文可以帮助大家消除疑虑,如果有问题的话,欢迎和我联系。

Brian

欢迎关注本博客微信订阅号 anb-io。每周推送内容,有技术也有生活,和你一起做一个有情怀的程序猿。

(翻译) TFS源代码控制的未来 (TFSVC vs. Git)的更多相关文章

  1. (翻译) TFS源码控制的未来 (TFSVC vs. Git)

    博主: 翻译自微软Visual Studio ALM产品组老大Brian Harry 的博客文章 The future of Team Foundation Server Version contro ...

  2. TFS下的源代码控制

    以下主要描述了: TFS源代码控制系统的基本场景 如何把一个项目添加到源代码管理中 如何与服务器同步 如何做Check-In 如何做分支与合并 什么是上架与下架 我们知道工作项是项目管理的基本元素,但 ...

  3. [转]TFS下的源代码控制

    本文转自:http://www.cnblogs.com/ajiefj/archive/2010/04/23/1718450.html 以下主要描述了: TFS源代码控制系统的基本场景 如何把一个项目添 ...

  4. TFS源代码管理的8大注意事项

    TFS源代码管理的8大注意事项 目录 源代码管理的8大注意事项... 1 1. 使用TFS进行源代码管理... 2 2. 如果代码没放在源代码管理软件里,等于它不存在... 2 3. 要早提交,常提交 ...

  5. [转载]TFS源代码管理8大注意事项

    目录 1. 使用TFS进行源代码管理 2. 如果代码没放在源代码管理软件里,等于它不存在 3. 要早提交,常提交,并且不要觉得麻烦 4. 提交前要检查你更改了什么 5. 写提交信息时一定要认真 6. ...

  6. [转载]TFS源代码管理

    以下主要描述了: TFS源代码控制系统的基本场景 如何把一个项目添加到源代码管理中 如何与服务器同步 如何做Check-In 如何做分支与合并 什么是上架与下架 我们知道工作项是项目管理的基本元素,但 ...

  7. vscode 显示"没有活动的源代码控制提供程序“处理

    不知为何我的 VS Code 在 1.25 版本开始就一直 ”没有活动的源代码控制提供程序“,找了好几天都没找到,今天终于找到怎么处理了, 切换到插件中找到下图对应的 Git (可以直接再上面搜索框输 ...

  8. VSCode Git 没有活动的源代码控制提供程序

    主要原因:我以前安装的Git只允许在Git-Bash中运行,需要重新安装Git,选择允许三方软件的那个选项,然后安装Git插件,修改git.path即可. 以下是解决过程中的尝试,记录如下,实际上只需 ...

  9. [翻译]用Dart塑造Android未来

    明天回家,今天下午瞅时间翻译了Cyril Mottier的另外一篇有关Android前景的文章. 原谅地址是:http://cyrilmottier.com/2014/06/12/shaping-th ...

随机推荐

  1. Web API应用架构在Winform混合框架中的应用(1)

    在<Web API应用架构设计分析(1)>和<Web API应用架构设计分析(2)>中对WebAPI的架构进行了一定的剖析,在当今移动优先的口号下,传统平台都纷纷开发了属于自己 ...

  2. C# ~ 由 IDisposable 到 GC

    IDisposable 接口 1. 托管资源和非托管资源   ·  托管资源  a.  CLR 控制和管理的内存资源,如程序中在 Heap 上分配的对象.作用域内的变量等:  b.  GC 机制实现自 ...

  3. android多分辨率多密度下界面适配方案

    前言 Android 设计之初就考虑到了UI在多平台的适配,它本身提供了一套完善的适配机制,随着版本的发展适配也越来越精确,UI适配主要受平台两个因素的影响:屏幕尺寸 (屏幕的像素宽度及像素高度)和屏 ...

  4. SSH实例(6)

    在WebContent文件夹下新建query.jsp和save.jsp文件. query.jsp: <%@ page language="java" import=" ...

  5. PYTHON3连接MYSQL数据库

    http://smilejay.com/2013/03/python3-mysql-connector/ Python 2.x 上连接MySQL的库倒是不少的,其中比较著名就是MySQLdb(Djan ...

  6. 【FOL】第一周

    本来打算按计划做下去的,发现原来那个sprite虽然功能强大,但是对我想要做的东西来说,冗余似乎有些多,决定自己写一个. 之前做了一段时间的h5游戏,用的是panda.js,发现这个引擎封装的还不错, ...

  7. 用php模拟做服务端侦听端口

    参考:http://www.cnblogs.com/thinksasa/archive/2013/02/26/2934206.html http://blog.csdn.net/alongken200 ...

  8. IO碰到的问题

    1.流关了,并不代表流对象为空 可是java并没提供查看流是否关闭的方法 不过如果流已经关闭了以后,再对流进行操作的话,会抛出IOException:Stream closed异常 可以根据这个异常来 ...

  9. FancySelect – 更好用的 jQuery 下拉选择框插件

    FancySelect 这款插件是 Web 开发中下拉框功能的一个更好的选择.FancySelect 使用方便,只要绑定页面上的任何 Select 元素,并调用就 .fancySelect() 就可以 ...

  10. CSS中!important的作用

    提升指定样式规则的应用优先权. IE6及以下浏览器有个比较显式的支持问题存在,!important在同一条规则集里不生效.请看下述代码: 示例代码: div { color: #f00 !import ...