TFS自动化编译研究

来源:互联网 发布:数据采集与控制系统 编辑:程序博客网 时间:2024/06/05 07:38

TFS上有一个TeamBuildTypes

会有3个文件:

TFSBuild.proj

TFSBuild.rsp

WorkspaceMapping.xml

 

 

C:\Program Files\MSBuild\Microsoft\VisualStudio\v8.0\TeamBuild

Microsoft.TeamFoundation.Build.targets

 

团队项目添加生成定义的时候,在团队项目源代码里面,

$/<TeamProject>/TeamBuildTypes/<TeamBuildDefinitionName>目录下生成

要建立TFSBuild.proj

 

整个Team Build的流程,这个流程以默认的流程定义为基础,拼合了自定义的流程. 为了加深印象, 我们把这个流程按照时间顺序大体归一下类:

·                                                                                            -> Initialize    :初始化(包括设定生成过程的各种环境变量和属性,生成BuildNumber)

·                                                                                            -> Clean        :清除中间文件和上一次生成的文件

·                                                                                            -> Get            :获取最新版本

·                                                                                            -> Lable         :给这次生成打上一个标记并记录

·                                                                                            -> Build         :编译生成

·                                                                                            -> Test          :运行各种测试, 比如unit tests文件,甚至可以直接提供扩展

·                                                                                            -> Packaging :打包程序集生成安装包

·                                                                                            -> Drop         :将生成的程序集和安装包,以及log文件,投递到指定位置

一般是这样的: xx.xx.xxxxxx.xx,即主版本号(Major Version No.),次版本号(Minor Version No.),生成号(Build No.),修订号(Revision No.) 

主版本号标示较大的功能更新或者说产品在特性(比如UI/主要业务逻辑更新/增加重大新特性)上有了翻天覆地的变化;次版本号标示对主要功能进行修补,主要定位是稳定性和兼容性问题;生成号一般标示这是生成过程时间信息的,由于通行的做法是这个号码每天加1,所以现在几乎快要被理解成离某一天(比如项目开始那天)的天数了;对应于生成号的实际含义,修订号被用来标示当天的第几次生成过程.这是比较通用的做法

 

"MSBuild引擎驱动下的,以团队基础框架提供的包含一系列生成目标(Target)的默认生成脚本文件 - Microsoft.TeamFoundation.Build.targets -为基础的, 可以被用户自定义生成脚本文件 - tfsbuild.proj -所覆盖从而形成一条确定的可执行的生成流程.",

 

 

应用Desktop Build的对象文件,还是tfsbuild.proj.微软把默认的Desktop Build流程定义在Microsoft.TeamFoudation.Build.targets,通过import语句导入到tfsbuild.proj文件中.现在我们用实例看一下如何使用Desktop Build.打开命令行工具(VS2008 command prompt),定位到含有tfsbuild.proj的位置,输入msbuild tfsbuild.proj,回车:

msbuild tfsbuild.proj

/p:Configuration=Debug;Platform=x64;BuildRoot=c:\bld;AssemblyBuildNumber=0;AssemblyRevisionNumber=0

等输出完毕, 一次Desktop Build就完成了.如果您没有重写BuildRoot属性的话,默认的BuildRoot就是您工作区的最顶目录,在这个目录下, 您可以看到一个Binaries目录,里面就是这次编译的输出并且包含了生成的安装包,当然如果您在重写服务器生成流程的时候如果改写了一些位置属性,那么就去对应的地方查找结果吧:

原创粉丝点击