惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Martin Fowler
Martin Fowler
D
DataBreaches.Net
F
Fortinet All Blogs
阮一峰的网络日志
阮一峰的网络日志
博客园_首页
Apple Machine Learning Research
Apple Machine Learning Research
H
Help Net Security
M
MIT News - Artificial intelligence
美团技术团队
人人都是产品经理
人人都是产品经理
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
The Cloudflare Blog
有赞技术团队
有赞技术团队
L
LangChain Blog
博客园 - Franky
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园 - 【当耐特】
S
SegmentFault 最新的问题
V
Visual Studio Blog
Blog — PlanetScale
Blog — PlanetScale
Hugging Face - Blog
Hugging Face - Blog
B
Blog
I
InfoQ

博客园 - xwang

更好的执行 Better Communication – 你在听吗? 时间管理 or 能量管理 Stress Managment - 压力管理 Understanding WPF Template 调试Rotor: 启动过程 sscli google group launched Understanding Static Constructor, 理解静态构造函数 - xwang 自定义Rotor: 给Rotor添加一个CIL指令 PAL 阅读笔记 Metadata Tables, 元数据表 [Coding For Fun] 您有运行许可证吗? How To: TeamBuild 编译之前的版本 混淆的概念与实践 [Debugging Tool]Windbg调试托管代码 The Anatomy Of Basic Data Structure, 基本数据结构解析 Understanding GetHashCode, 理解GetHashCode 基本数据结构解析之List 试探讨泛型实现过程
How To: Team Build 自定义版本号
xwang · 2008-12-25 · via 博客园 - xwang

a) 自定义一个Task

b) 添加Task到TFSBuild.proj

1. 自定义一个Task

a. File -> New -> Project -> Class Library

clip_image002

b. 添加项目引用

项目右键 -> Add Reference -> Micosoft.Build.Engine/Framework/Tasks /Utilities 最好选择2.0版本,如果确定服务器运行的是3.5版本则两者皆可

clip_image004

c. 编写一个Task(继承自ITask 或者 Task)

Public class MyBuildNumber : Task

2. 将自定义的Task添加到TFSBuild.proj中

a) 签出对应的TFSBuild.proj

clip_image006

c) 将对应的dll签入到文件夹中

1. 手工拷贝到CIProjectTeamBuild (即:对应的BuildType文件夹), 而后手工添加,签入

2. 在命令行中切换到CIProjectTeamBuild, 运用命令签入

a. 切换到 Visual Studio 2008 Command Prompt

b. 切换到对应目录,例如 cd C:\Documents and Settings\tfsSetup\Desktop\TeamBuildTypes\CIProjectTeamBuild

c. 将对应的dll拷贝到该文件夹,如上图所显示的TfsBuildUntities.dll

d. 添加并签入该文件

a) Tf add TfsBuildUntities.dll

b) Tf checkin TfsBuildUnitities.dll

e. 添加对应的设置

   1: <UsingTask TaskName="TfsBuildUtilities.MyBuildNumber" AssemblyFile=" TFSBuildUnities.dll"/>
   2: <Target Name = "BuildNumberOverrideTarget" >
   3:     <MyBuildNumber BaseBuildName=" MyBuild_1.0" LastBuildNumber="$(LastBuildNumber)">
   4:         <Output TaskParameter="BuildNumber" PropertyName="BuildNumber"/>
   5:     </MyBuildNumber >
   6: </Target>

f. Queue New Build