TearSnow Fan


TFS 签入签出代码规范

最近一个项目,VS 2010下使用C#开发,代码管理用的是 TFS,开发团队编程水平有限,加上对 TFS 不熟悉,于是参考了一下网上有关使用 TFS 进行版本控制的规范,自己制定了一个。这方面资料也不多,粘上来献丑了。

 

一、开发平台的约定

1.1 开发操作系统环境和最终用户使用环境

开发环境:Windows 7 SP1,.Net Framework 4.0

用户环境:Windows 7 SP1,.Net Framework 4.0

1.2 开发工具

Visual Studio 2010 SP1,局域网连接 TFS 团队资源管理器

1.3 数据库管理系统

SQL Server 2008

1.4 版本控制工具

Visual Studio 2010 Team Foundation Server (TFS),运行于 Windows Server 2003 R2 SP1 服务器上。

1.5 开发规范的执行问题

《C#编码规范》

 

二、工作方式的约定

2.1 开始工作前的行为

每天开始工作先签出代码,可规定一个具体时间,例如:8:30-9:30等

注意:

1、打开解决方案时在网络环境允许的情况下一定要连接团队开发服务器,每次开始工作时检查是否已连接(各个文件上有图标);

2、根据需要,签出你所需要修改的代码(注:在签出代码时,你的签出文件会和服务器同步),而不是签出整个解决方案或者整个工程的所有代码;

3、修改代码时,不要改动你签出文件中他人的方法,如必需改动的,请与该方法作者协商;

4、方法体不要太长,尽量不要超过20行,多进行重构;

5、当一个方法完成时,请马上构建单元测试,并测试通;过

6、单元测试需可重复测试,不要出现只能测试一次,下次测试必须修改数据库才能再测试的问题;

2.2 签入的行为

工作结束时,需签入全部已完成开发的代码, 可以安排一个具体时间,例如:11:00-12:00,17:00-18:00等。

签入步骤:

1、签入代码前先选择“获取服务器上最新版本(递归)”(不会对你的已签出文件覆盖,而是测试你的代码和别人代码的兼容性)

2、编译解决方案下所有工程

3、解决编译冲突

4、运行单元测试

5、提交签入你的已签出文件(最好在查看该解决方案下你已签出的全部文件列表,确保签入所有已完成的文件)

6、签入代码时请在说明栏写简单说明

2.3 版本控制行为

这里主要讨论代码commit的要求和发生冲突的解决办法。签入时发生冲突的解决顺序:

1、出现冲突时尽量不要选择自动合并

2、自动合并解决不了的请选择解决按钮,选择手工合并

2.4 单元测试的使用约定

1、单元测试必须测试类中所有的方法

2、尽量扩展单元测试的范围,譬如在OrgCompany类中ID为int值,如果我给此值赋一个浮点值1.2323288或一个大数1292310843812834923812348方法是否能成功捕捉异常并返回报错信息等

3、单元测试中不仅要测Assert.IsEqual还要假设Assert.IsNotEqual Assert.IsNull等多种测试,一个方法可对应多个测试方法

4、每个程序员对自己的单元测试负责,要做到每日运行至少两遍自己的单元测试

2.5 其他注意事项

1、禁止用直接Ctrl+A,Ctrl+C后再到其它文件中Ctrl+V的方式回写覆盖代码

2、签入代码时关联有效工作项,并根据当前情况选择“关联”或“解决”

 

参考资料:

[1] 博客园:TFS签入签出规范

本文固定链接: http://blog.xieyc.com/tfs-check-out-and-check-in-specification/ | 小谢的小站

该日志由 xieyc 于2013年07月09日发表在 编程 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: TFS 签入签出代码规范 | 小谢的小站
关键字: , , ,

TFS 签入签出代码规范:等您坐沙发呢!

发表评论

:wink: :neutral: :mad: :twisted: :smile: :shock: :sad: :roll: :oops: :eek: :mrgreen: :lol: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:

快捷键:Ctrl+Enter