您的位置:首页 > Web前端

抛弃强大的TFS ,借助于BugTracker.NET + Visual Source Safe + SourceLink搭建项目开发环境

2013-11-03 12:06 471 查看
微软公司的TeamFoundationServer是个强大的项目管理工具,如果用.NET开发,它应该是首选的项目管理平台。TFS的成本比较高,而且和VisualStudio集成紧密。比如TSF有些功能必需和VisualStudio配合才行,比如新建项目,必须在VisualStudio中完成。TFS必须要用SQLServer作为数据存放平台。这样导致运行TFS必须对微软的这几个产品都要购买许可,费用相当贵。TeamFoundationSever另一个不好的方面是对硬件的消耗相当高,4G内存跑起来都有些吃力,再和微软的SharePoint组合起来,一般的公司都承受不了这样的成本,且不说软件费用,仅仅是硬件方面都难达到要求。

言归正转,项目管理一般涉及到源代码版本控制和需求管理。多人团队开发时,用源代码管理可以节省很多代码冲突时的合并时间,如果再能配合一个需求管理工具,把代码中的每一种修改关联到需求记录中去,这样就很完美了。TFS中令我相当着迷的地方就是Changeset变更集可以直接链接到需求记录(Bug或Enhancement)。每个Bug后面都有Link选项,以此作为关联,在以后查找问题原因时带来很多便利。

没有金刚钻,小米加步枪也可以漂亮的干活,来看我是如何组合这三个工具以搭建项目开发环境。

源代码管理安装好VisualSourceSafe2005,这是此软件最后一个版本,简单方便稳定。就是自己独立做项目也经常用它,可以记录每次对代码的变更,在维护阶段会节省大量时间。

需求管理选用BugTracker.NET,其它的第三方的免费的或是商用的工具找了很多。主要考虑的方面是简单,硬件消耗低,可维护,稳定。非.NET开发的需求工具一率不用,原因是用.NET开发的系统,自己查找原因和维护起来方便。Ruby,PHP,JSP技术只简单的了解,要是用这些技术写的需求工具出了问题,又要折腾的去学这些技术查找原因。已经30+程序员了,不喜欢折腾,不喜欢玩技术,喜欢用简单的方法把目的达到。

硬件消耗低,动不动就几百MB的东西,看起来比较吓人,维护起来肯定不容易。最好是开源的系统,以后能写一些扩展或是代码对它进行扩充。最后,要稳定,不能一装上去就报N个错误。需求管理工具一般都是B/S架构的,ASP.NET写的最好,自己以前是ASP.NET程序员出身,可以解决维护难题。能有个VisualStudioAddIn或是C/S的更方便,实在找不到,自己看数据库表结构也可以写一个。鉴于这些原因,最终选BugTracker.NET。

第三,我还想把代码中的变更直接Link到需求管理工具中。每一个需求,都会对代码进行相应的变更,为了追踪方便,我想代码中的各地方的修改,直接关联到需求工具中。经过搜索,WholeTomatoSoftware出品的SourceLinks满足我的需求。WholeTomatoSoftware是大名鼎鼎的VisualAssistX工具的开发商,VC++程序员必备工具之一。

SourceLinks是免费工具工具,设计原理也比较简单。可以从以下地址获取它:

http://www.wholetomato.com/products/sourcelinks/default2.asp





源代码中用固定的格式的字符串标识代码修改的原因,比如case45192,SourceLinks会扫描源代码文件,识别此字符串,当点击case45192时,可以跳到浏览器中类似于这样的地址http://localhost/btnet/edit_bug.aspx?id=45192,查看需求明细内容。另外,还可以做鼠标旋停插件,如上图所示,它显示了case45192的详细信息。





为达到此目的,需要对BugTracker.NET进行简单的修改,改成自动登陆模式或是改成域用户验证方面,以避免跳转到需求明细时,要求输入用户名和密码。从下载回来的BugTracker.NET文件包中,进入www目录,找到default.aspx文件,直接在用户名和密码的控件的地方,输入控件值,默认的用户名和密码均是admin。跳到108行,加入代码on_logon();即可。

<tdclass=lbl>User:</td>

<td><inputrunat="server"type=textclass=txtid="user"value="admin"></td>

</tr>


<tr>

<tdclass=lbl>Password:</td>

<td><inputrunat="server"type=passwordclass=txtid="pw"value="admin"></td>

</tr>



                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: