TFS2017代码搜索功能

当团队或者公司的研发中心的代码库扩展到了一定程度,在代码库中查找一些需要的代码会变的比较困难。比如敏捷模式下的项目小组希望能够找到并重用其他小组开发的一些基础性的功能代码,我们通常需要去找当事人去询问,去描述需求,然后再有当事人去回忆去查找,也许1、2天的时间就过去了,也未必能够精确地找到想要的功能代码。

 

TFS2017中在原有的工作项搜索的基础上添加了代码搜索的功能。在功能上表现出来的仅仅是功能的扩充,但是在后台实现搜索的功能机制确是完全不一样的。工作项的搜索是基于SQLServer的全文搜索和传统的数据查询来实现的。但是代码库的搜索却是采用开源的ElasticSearch项目作为基础来实现的,搜索的速度的和精确度真是棒棒的,并且在用户界面提供了许多常规搜索语法模型。这么一些搜索功能为团队的协作挺供了很多的改进。

 

1, TFS代码搜索后台机制

安装完TFS2017并配置完搜索功能后,在TFS的安装目录下面会自动下载ElasticSearch的基础程序框架。

目前搜索功能只提供了类文本文件内容搜索功能,比如cs,js,xml,java等等文件,针对代码库中的其他文件如word,excel等文件是不提供内容搜索的。

 

 

 

2, 代码搜索功能

在Web Portal中,在团队的首页面或者代码功能区页面,顶行的搜索框会自动显示“搜索代码”的提示,当搜索框获取到输入焦点后,会自动弹出搜索模型和条件下拉框,可满足多数的用户搜索代码库中。

 

 

3, 跨团队代码搜索

如果用户具备足够的权限,可以针对以团队项目为界限的权限限制实现跨团队的项目代码搜索。

 

在开放性团队文化和敏捷团队项目中,不应把代码库按照项目或团队小组设置过多的权限,软件项目保密性管理的依赖于权限机制是不会有太好的结果,反而影响团队士气和应有的生成效率。

 

下图是我的环境中两个实验项目AgileLab和ScrumLab中实现跨项目搜索的结果。

 

 

posted @ 2017-03-21 17:09  JiaLiWei  阅读(1589)  评论(2编辑  收藏  举报