Teamcity+SVN+VisualStudio之持续集成简明指南

Teamcity+SVN+VisualStudio之持续集成

简明指南

 

一、写在最前:

1.      各组件版本如下:

Teamcity(简称tc)版本:8.1.4

SVN版本:TortoiseSVN 1.8.7

VS版本:VS2010. 10.0.30319.1

2.      关于CI(Continuousintegration,持续集成):

其重要性与关键性自不必多说,由于不是本文重点,因此略过。可以参考:http://en.wikipedia.org/wiki/Continuous_integration(概念) 以及 http://en.wikipedia.org/wiki/Comparison_of_continuous_integration_software(CI工具比较)

 

二、安装

安装过程不细表,向导式安装,一路next即可。不过有一个地方请注意:

1.      tc对外服务端口,最好不要使用80端口(因为常被占用)。这里我修改为60380端口

 Teamcity+SVN+VisualStudio之持续集成简明指南_第1张图片

安装完毕后,记住两个东西:如下图

a.      tc的服务链接地址:http://localhost:60380 (如果是跨网访问,在访问时请将localhost修改为ip地址)

b.      tc的工作目录: C:\TeamCity\buildAgent\work (tc会将代码checkout至该目录)

 Teamcity+SVN+VisualStudio之持续集成简明指南_第2张图片

安装完毕后,会自动打开浏览器,进入web UI页面

 

三、使用

1.      初次会弹出设置向导。需要注意的是在数据库设置中,虽然tc很谦虚的推荐其他类型数据库,但从我们使用实践下来,它内部的HSQLDB数据库已经可以很好的工作了,因此我们推荐直接使用该数据库(还省去了配置外部数据库的麻烦)。其他设置使用默认即可。

2.      等待web UI页面初始化完成之后,首先注册一个用户,然后使用该用户登录

登陆后,我们可以看到已经存在了一个tc代理服务器

3.      创建工程。 点击“Create project”,填写如下元素后,创建工程

 Teamcity+SVN+VisualStudio之持续集成简明指南_第3张图片

4.      创建编译配置

4.1    General Settings中点击Create build configuration

4.2    创建编译配置

Teamcity+SVN+VisualStudio之持续集成简明指南_第4张图片

4.3    创建代码管理器属性

选择VCS类型(示例使用的是SVN,其他代码管理软件配置类似),完成代码管理器属性配置。(示例使用的IDE是VS2010,因此SVN Connection Settings属性中的URL选择的是解决方案(.sln)所在的目录)

配置完成后,测试连接成功则通过。

4.4    设置成品路径

/subprj1/bin/release/win32/*.exe=> .\testsln\subprj1\release\Win32\

说明:将vs解决方案相对目录下(/subprj1/bin/release/win32/)的后缀名为.exe的文件,全部拷贝至.\testsln\subprj1\release\Win32\下, 一般为目录C:\ProgramData\JetBrains\TeamCity\system\artifacts\SilkwaySvn20140521)

4.5    设置编译步骤

点击左侧的BuildSteps,然后配置运行器。(示例使用的是VS运行环境)

Teamcity+SVN+VisualStudio之持续集成简明指南_第5张图片

至此,可以点击右上角的Run按钮,进行集成编译测试。

然后至tc的工作目录下,检查编译及生成情况。(可以通过构建日志,查看tc的checkout目录)

Teamcity+SVN+VisualStudio之持续集成简明指南_第6张图片

4.6    设置触发器

设置触发器的目的在于依据条件自动进行编译及集成。

添加新触发器

Teamcity+SVN+VisualStudio之持续集成简明指南_第7张图片

选择VCS触发器,例如勾选“Trigger a build on eachcheck-in”,可以设置为当每次有代码迁入时,均编译;其他常用的设置有每天定时编译等选项。

 Teamcity+SVN+VisualStudio之持续集成简明指南_第8张图片

你可能感兴趣的:(SVN,持续集成,CI,VisualStudio,TeamCity)