文档介绍:TFS源代码管理项目和解决方案的结构VisualStudio使用解决方案(.sln)文件将相关的VisualStudio项目(.csproj)文件组织在一起。确定如何设置项目和解决方案的结构是一项重要的决策,因为我们选择的模式会带来多方面的后果。例如,它会对我们的开发团队程序将解决方案和项目推入/拉出源代码管理的难易程度、用于引用依赖项的机制以及生成过程产生影响。解决方案基于我们所处理的是具有大量项目文件的软件开发项目,应该使用多个解决方案文件,按照整个团队项目中的功能子集分组相关项目(即按照系统架构设计说明书中的功能子集分组)。所以,将应用系统拆分为多个解决方案,各解决方案内的所有引用都是项目引用。对各解决方案外部的项目的引用则是文件引用。如果程序集位于解决方案的项目集之外,但仍然想使用项目引用,则可以将原始项目的依赖项(被引用项目)分支到开发人员的项目中。当开发人员想获取新版本的依赖项时,通过执行从原始项目到分支的合并即可实现。如果开发人员由于需要引用当前解决方案的项目集之外的程序集而无法使用项目引用,并且不希望创建从原始项目到他的项目的分支,则必须设置文件引用。解决方案的创建必须由专人或各个项目团队Leader进行操作,其他人员无此操作权限。注:网站开发有WebSite和WebApplication两种编程模型,我们在项目开发中统一使用后者。项目结构将来自所有团队项目的全部源代码放在一个文件夹下,例如D:\TeamDev\\SourceCode。同时为每个团队项目创建一个子文件夹,如下例所示:D:\TeamDev\\SourceCode 根容器文件夹,包含所有团队项目\Platform 平台团队项目的容器文件夹\Tool 工具团队项目的容器文件夹\DataMaintenance 数据维护团队项目的容器文件夹\AdministrativeApp 管理应用团队项目的容器文件夹\ProductionApp 生产应用团队项目的容器文件夹\Report 报表团队项目的容器文件夹在各团队项目文件夹下使用的应用程序文件夹结构,如下例所示:\ToolTeamProject 平台工具团队项目的容器文件夹\Main (如有需要) \FormDesigner \Source \ClassLibrary1 \WebApp1 \UnitTest 包含单元测试项目和源代码(如有需要) \ClassLibrary1Test \WebApp1Test项目结构的创建必须由专人或各个项目团队Leader进行操作,其他人员只能在创建好的结构下进行开发。解决方案下各项目结构要求详见“$/MES/DevelopmentLibrary/Doc/04开发文档/”文档。分支TFS中的分支(Branching)是指把源代码控制系统中的文件和目录复制一份。分支能够保持文件和目录的历史,并且能够把旧的文件上的修改合并到新的文件上去。在新的分支上进行的修改,和原来的分支(一般称为主分支)没有任何关系。通常,分支创建用于推行一个发布、维护之前的发布或并行开发。除非有充足的理由,否则就不应进行分支。以