(翻译) TFS源代码控制的未来 (TFSVC vs. Git)
说明:由于博客园的限制,之前转发的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的核心功能,比如:
- 我们最近大幅改进了我们的Web界面,加入如浏览器内编辑,签入,删除等功能。这些都是在TFSVC上。
- 我们为TFSVC添加了“欢迎页面”,基本上就是一个基于TFSVC的wiki页面。(博主:使用markdown语言的wiki页面)
- 我们在CodeLens上支持TFSVC,而且一些功能只在TFSVC上可用,比如:“分支变更影响”指示器的功能。
- 下一代的构建系统Build.vNext支持TFSVC。
- 全新的代码搜索功能,虽然预览版只支持Git,但在正式发布版中会提供对TFSVC的支持。
- 代码评审功能的改进,包括多次迭代式评审,web支持,Visual Studio中的代码评审意见注释等等。这些都支持TFSVC。
- 我们最近在支持Mac/Linux环境的跨平台Team Explorer Everywhere (TEE)工具上改进了对超过260个字符的支持,这也是在TFSVC上。这是社区中经常被吐槽的问题。(博主:TEE是Eclipse的插件,提供Eclipse中连接TFS进行团队开发的能力)
- TFSVC项目的改名操作,看上去是个小功能,但其实底层做出了非常大的改动。
- 我们正在开发同一项目中2种源代码控制并存的支持,这也需要对TFSVC进行修改。
当然还有很多我现在没办法分享给大家。大家可以看到,TFSVC没有死,而且活得很好,我们还在这上面大规模的投入,并且会继续投入。对于用户来说,你需要根据自己的实际情况选择最适合你的工作方式,我们会一如既往的支持你。
希望本文可以帮助大家消除疑虑,如果有问题的话,欢迎和我联系。
Brian
欢迎关注本博客微信订阅号 anb-io。每周推送内容,有技术也有生活,和你一起做一个有情怀的程序猿。

(翻译) TFS源代码控制的未来 (TFSVC vs. Git)的更多相关文章
- (翻译) TFS源码控制的未来 (TFSVC vs. Git)
博主: 翻译自微软Visual Studio ALM产品组老大Brian Harry 的博客文章 The future of Team Foundation Server Version contro ...
- TFS下的源代码控制
以下主要描述了: TFS源代码控制系统的基本场景 如何把一个项目添加到源代码管理中 如何与服务器同步 如何做Check-In 如何做分支与合并 什么是上架与下架 我们知道工作项是项目管理的基本元素,但 ...
- [转]TFS下的源代码控制
本文转自:http://www.cnblogs.com/ajiefj/archive/2010/04/23/1718450.html 以下主要描述了: TFS源代码控制系统的基本场景 如何把一个项目添 ...
- TFS源代码管理的8大注意事项
TFS源代码管理的8大注意事项 目录 源代码管理的8大注意事项... 1 1. 使用TFS进行源代码管理... 2 2. 如果代码没放在源代码管理软件里,等于它不存在... 2 3. 要早提交,常提交 ...
- [转载]TFS源代码管理8大注意事项
目录 1. 使用TFS进行源代码管理 2. 如果代码没放在源代码管理软件里,等于它不存在 3. 要早提交,常提交,并且不要觉得麻烦 4. 提交前要检查你更改了什么 5. 写提交信息时一定要认真 6. ...
- [转载]TFS源代码管理
以下主要描述了: TFS源代码控制系统的基本场景 如何把一个项目添加到源代码管理中 如何与服务器同步 如何做Check-In 如何做分支与合并 什么是上架与下架 我们知道工作项是项目管理的基本元素,但 ...
- vscode 显示"没有活动的源代码控制提供程序“处理
不知为何我的 VS Code 在 1.25 版本开始就一直 ”没有活动的源代码控制提供程序“,找了好几天都没找到,今天终于找到怎么处理了, 切换到插件中找到下图对应的 Git (可以直接再上面搜索框输 ...
- VSCode Git 没有活动的源代码控制提供程序
主要原因:我以前安装的Git只允许在Git-Bash中运行,需要重新安装Git,选择允许三方软件的那个选项,然后安装Git插件,修改git.path即可. 以下是解决过程中的尝试,记录如下,实际上只需 ...
- [翻译]用Dart塑造Android未来
明天回家,今天下午瞅时间翻译了Cyril Mottier的另外一篇有关Android前景的文章. 原谅地址是:http://cyrilmottier.com/2014/06/12/shaping-th ...
随机推荐
- .NET Framework介绍
.NET Framework 是一个集成在 Windows 中的组件,它支持生成和运行下一代应用程序与 XML Web Services. .NET Framework 旨在实现下列目标: 提供一个一 ...
- 【SQL】SQL2012离线帮助文档安装不上的处理手记
注:解决方法在最后,心急的童鞋可以直接往下滚动. 我SQL实例装的是2008 R2版,由于该版自带的SSMS(Microsoft SQL Server Management Studio 管理工具)存 ...
- oracle11g的standby性能分析报告statpack安装
一般常见的分析standby database的性能问题的方法就是通过动态性能视图来判断,从11g开始,随着Active Data Guard功能的出现,早期的Statspack 工具可以在stand ...
- 炉石传说 C# 开发笔记 (续)
炉石传说山寨的工作一直在进行着,在开发过程中深深体会到,对于业务的理解和整个程序的架构的整理远比开发难得多. 在开发过程中,如果你的模型不合理,不准确,很有可能造成代码的混乱,冗余,难以维护和扩展性比 ...
- div浮动在页面底部
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- spring笔记4 spring MVC的基础知识4
//todo 5,spring MVC的本地化解析,文件上传,静态资源处理,拦截器,异常处理等 spring MVC 默认使用AcceptHeaderLocalResolver,根据报文头的Accep ...
- 使用attrs.xml自定义属性
控件有很多属性,如android:id.android:layout_width.android:layout_height等,但是这些属性都是系统自带的属性.使用attrs.xml文件,可以自己定义 ...
- 2016暑假多校联合---A Simple Chess
2016暑假多校联合---A Simple Chess Problem Description There is a n×m board, a chess want to go to the po ...
- JSON字符串和java对象的互转【json-lib】
在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML.JSON等,JSON作为一个轻量级的数据格式比xml效率要高,XML需要很多的标签,这无疑占据了网络流量,JSON在这方面则做的很好, ...
- android 网络通讯
//get方式请求网络数据 String urlPath="http://192.168.98.112:8080/CloudMusicPlayer/fragment1_1_lv2/json/ ...