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对外服务port,最好不要使用80port(由于常被占用)。这里我改动为60380port

安装完成后,记住两个东西:例如以下图

a.      tc的服务链接地址:http://localhost:60380 (假设是跨网訪问,在訪问时请将localhost改动为ip地址)

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

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

三、使用

1.      初次会弹出设置向导。须要注意的是在数据库设置中,尽管tc非常谦虚的推荐其它类型数据库,但从我们使用实践下来,它内部的HSQLDB数据库已经能够非常好的工作了,因此我们推荐直接使用该数据库(还省去了配置外部数据库的麻烦)。

其它设置使用默认就可以。

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

登陆后,我们能够看到已经存在了一个tc代理server

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZ3JlYXQzNzc5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

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

4.      创建编译配置

4.1    General Settings中点击Create build configuration

4.2    创建编译配置

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执行环境)

至此。能够点击右上角的Runbutton,进行集成编译測试。

然后至tc的工作文件夹下。检查编译及生成情况。(能够通过构建日志,查看tc的checkout文件夹)

4.6    设置触发器

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

加入新触发器

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZ3JlYXQzNzc5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

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

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZ3JlYXQzNzc5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

版权声明:本文博主原创文章。博客,未经同意不得转载。

Teamcity+SVN+VisualStudio在持续集成简明教程的更多相关文章

  1. Jenkins +Maven+Tomcat+SVN +Apache项目持续集成构建

    详解Jenkins +Maven+Tomcat+SVN +Apache项目持续集成 一:前言 1. Jenkins jenkins版本大全http://mirrors.jenkins-ci.org/ ...

  2. Jenkins + svn + maven 构建持续集成环境搭建

    Jenkins简介 Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括: ...

  3. Jenkins+Maven+SVN快速搭建持续集成环境

    http://www.cnblogs.com/sunzhenchao/archive/2013/01/30/2883289.htmlhttp://blog.csdn.net/pein_zero/art ...

  4. Jenkins+ANT+SVN快速搭建持续集成环境

    伟大的语言都从helloworld开始,这里我们用Jenkins+ANT+SVN来搭建这一套持续集成环境. 环境准备: 一台已经配置好Jenkins和Ant的机器. 项目准备: 用Ecplise建立一 ...

  5. Jenkins+MSbuild+SVN实现dotnet持续集成 快速搭建持续集成环境

    Jenkins是一个可扩展的持续集成引擎,Jenkins非常易于安装和配置,简单易用,下面开始搭建dotnet持续集成环境 一.准备工作 1.系统管理-->管理插件-->可选插件中找到MS ...

  6. Jenkins+Maven+SVN快速搭建持续集成环境(转)

    Jenkins是一个可扩展的持续集成引擎,Jenkins非常易于安装和配置,简单易用,下面看看我们是如何几分钟就快速搭建一个持续集成环境吧. 假设我们目前已经有2个maven项目:entities(J ...

  7. (转)使用CruiseControl+SVN+ANT实现持续集成之二

    1. 环境搭建 1.1. 下载及目录介绍 从官方站点http://cruisecontrol.sourceforge.net/download.html下载一份最新的 CC 压缩包,最新的版本号为2. ...

  8. Jenkins+svn+ant+tomcat持续集成

    转载自 http://www.cnblogs.com/liuhaixia/p/7267473.html Jenkins是基于Java开发的一种持续集成工具,用于监控秩序重复的工作.通过Jenkins+ ...

  9. Jenkins+Ant+SVN+Jmeter实现持续集成

     一.什么是持续集成? 待补充 二.说明: 本次框架介绍中不涉及到介绍框架的构建过程,介绍如何构建环境详细的构建见前篇文章: jmeter+Jenkins持续集成(邮件通知) Jmeter+Jenki ...

随机推荐

  1. about Red_Hat_Enterprise_Linux_7

    systemd systemd 是 Linux 的系统和服务管理程序,替换了 Red Hat Enterprise Linux 之前的发行本中使用的 SysV.systemd 与 SysV 和 Lin ...

  2. UFLDL教程之(一)sparseae_exercise

    下面,将UFLDL教程中的sparseae_exercise练习中的各函数及注释列举如下 首先,给出各函数的调用关系 主函数:train.m (1)调用sampleIMAGES函数从已知图像中扣取多个 ...

  3. http server v0.1_http_server.c

    /**************************************************************** filename: http_server.c author: xx ...

  4. [BZOJ 1502] [NOI2005] 月下柠檬树 【Simpson积分】

    题目链接: BZOJ - 1502 题目分析 这是我做的第一道 Simpson 积分的题目.Simpson 积分是一种用 (fl + 4*fmid + fr) / 6 * (r - l) 来拟合 fl ...

  5. 浅谈JS DDoS攻击原理与防御

    分布式拒绝服务攻击(DDoS)攻击是一种针对网站发起的最古老最普遍的攻击.Nick Sullivan是网站加速和安全服务提供商CloudFlare的一名系统工程师.近日,他撰文介绍了攻击者如何利用恶意 ...

  6. 当我们在谈论 DevOps,我们在谈论什么?

    Cloud Insight 携手 BearyChat:打造适合运维人员的团队协作工具 走过 C 轮的 OneAPM,旗下的产品已经日渐丰满,从应用性能监控的 Application Insight 到 ...

  7. DJANGO不同应用之间的用户迁移

    因为重新规划新的项目,数据库表结构和以前不一定了,但是想保存以前的很多用户认证方面的东东. 于是看了一下DJANGO的导入导出功能. ~~~~~~~~~~~~~~~~~~~ 数据导入: python ...

  8. 【POJ3415】 Common Substrings(后缀数组|SAM)

    Common Substrings Description A substring of a string T is defined as: T(i, k)=TiTi+1...Ti+k-1, 1≤i≤ ...

  9. 子窗体显示在任务栏,且子窗体中又有弹窗(CreateParams修改三个风格参数)

    子窗体显示在任务栏时, procedure Tfrm_SendSmartMsg.CreateParams(var Params: TCreateParams);begin  inherited;  P ...

  10. (转)Mono for Android 优势与劣势

    最近有兴趣了解一下Mono for Andriod,也就是使用.NET平台来开发Andriod程序.Mono for Android API 几乎映射标准的Andriod API.例如,两边API几乎 ...