Team Foundation Server源代码管理多人开发的使用心得
问题1:多人使用TFS源代码管理器的时候,往往会造成同个文件内源代码不一致,覆盖别人的代码。
解决方案:
给多个人分配不同的开发任务,保证每个人修改的文件都不会重叠。
但有些情况无法避免多个人同时修改一个文件,怎么办?
即使多个人同时修改一个文件,一般不会同时修改一个文件里面的方法,在面向对象语言当中我们经常是增加方法,只要签入时合并的时候留个心眼就不会有太多问题。
如果出现多个人修改同一个文件里的同一个方法,那么就要注意了。要么是工作分配上面的问题,要么类方法设计的有问题了,建议考虑方法内聚性。
问题2:我获取了整个解决方案,为什么编译的时候少文件?
解决方案:
A在新增几个文件之后并签入到中心,B早上打开获取整个解决方案并编译就会发现有文件没有包含。
在这里TFS与GIT不同的是,TFS是有中心节点的,当我们签入新增的文件之后,会发现VS2013解决方案图标前有个钩子,表示有修改未签入,这是因为本地解决方案多了几个新增的文件后,解决方案已经发生改变,但解决方案没有签入。
我们经常的做法是,指定一个主程序员在某个特定时间签入解决方案,其他人只获取最新的解决方案而不签入。
上面提到特定时间可以试下班前半小时小组内沟通完当日的开发进度后,这时大家做一次签入,然后主程序员负责整理后并签入整个解决方案。
Team Foundation Server源代码管理多人开发的使用心得的更多相关文章
- Team Foundation Server 2013 with Update 3 Install LOG
[Info @10:14:58.155] ====================================================================[Info @ ...
- Team Foundation Server 开发流程管理管理研讨会
这周,和微软公司的朋友一起,受北京某金融企业邀请,为企业软件部门一个70多人的软件团队提供了一场基于Team Foundation Server的软件软件流程的技术研讨会.在研讨会中,培训基于微软Te ...
- 使用Team Foundation Server 2012源代码管理基本
原文:使用Team Foundation Server 2012源代码管理基本 本篇体验Team Foundation Server 2012安装及源代码管理. □ 安装 搜索"team ...
- Visual Studio 6 (VC6)连接Team Foundation Server (TFS 2018),实现源代码的版本管理
1. 概述 Visual Studio 6(VB6, VC6, Foxpro-)是微软公司在1998年推出的一款基于Windows平台的软件开发工具,也是微软推出.NET开发框架之前的最后一个IDE工 ...
- team foundation server——网络代码管理工具
像我们平时有时会莫名的弹出一个如下图所示的提示框,这个是什么呢?这个就是有人用team foundation server进行过代码管理的项目 那么team foundation server到底是什 ...
- 开发-日常工具:TFS(Team Foundation Server)
ylbtech-开发-日常工具:TFS(Team Foundation Server) TFS(Team Foundation Server)是一个高可扩展.高可用.高性能.面向互联网服务的分布式文件 ...
- TFS(Team Foundation Server)敏捷使用教程(四):工作项跟踪(1)
工作项跟踪(1) 可跟踪性是软件过程的重要能力,TFS主要是以工作项来实现过程的可跟踪性.曾有人问:"你们实际项目里的工作项是怎么样的?能不能让我们看看?"我也一直很好奇别的公司T ...
- TFS(Team Foundation Server)介绍和入门
在本文的两个部分中,我将介绍Team Foundation Server的一些核心特征,重点介绍在本产品的日常应用中是怎样将这些特性结合在一起使用的. 作为一名软件开发者,在我的职业生涯中,我常常会用 ...
- TFS(Team Foundation Server)简介和新手入门
在两部分的文章.我会介绍Team Foundation Server一些核心功能,着重于产品的日常应用是如何将这些功能结合使用. 作为一个软件开发.在我的职业生涯,.我常常用于支持软件开发过程中大量的 ...
随机推荐
- ReactJS尝鲜:实现tab页切换和菜单栏切换和手风琴切换效果,进度条效果
前沿 对于React, 去年就有耳闻, 挺不想学的, 前端那么多东西, 学了一个框架又有新框架要学
- thinkcmf无法使用config.html中的配置量
在模版中引入 <tc_include file=":config" />
- C++ 自由存储区是否等价于堆?
"free store" VS "heap" 当我问你C++的内存布局时,你大概会回答: "在C++中,内存区分为5个区,分别是堆.栈.自由存储区.全 ...
- MySQL、Oracle和SQL Server的分页查询语句
假设当前是第PageNo页,每页有PageSize条记录,现在分别用Mysql.Oracle和SQL Server分页查询student表. 1.Mysql的分页查询: SELECT * FROM s ...
- python 之 logging
#coding=utf-8 import logging logging.basicConfig(level=logging.DEBUG, format='%(asctime)s %(filename ...
- Linux之:Ubuntu速学笔记(1)
撰写日期:2016-7-2 17:11:28 Saturday 课程资源: web程序员角度ubuntu自修速学课程 链接来源:程序员在囧途, VMware: VMware Workstation1 ...
- c#.net单例模式的学习记录!
一. 单例(Singleton)模式 单例模式的特点: 单例类只能有一个实例. 单例类必须自己创建自己的唯一实例. 单例类必须给所有其它对象提供这一实例. 单例模式应用: 每台计算机可以有若干个打印机 ...
- quantum sets
the principles of quantum mechanics by p.a.m.dirac.
- ubuntu mysql使用
用navicat远程连不上mysql,提示10061错误解决办法: 修改/etc/mysql/my.cnf文件,找到127.0.0.1行,注释该行 命令:vi my.cnf 按i键进入编辑模式 编辑完 ...
- Github .gitignore详解
在使用git作版本控制时,git会默认把git控制的文件夹里面的所有文件都加入到版本控制.但是在实践中,我们经常会遇到不想某些文件或文件夹被git追踪的情况.比如logs文件.代码构建过程中产生的一些 ...