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对外服务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在持续集成简明教程的更多相关文章
- Jenkins +Maven+Tomcat+SVN +Apache项目持续集成构建
详解Jenkins +Maven+Tomcat+SVN +Apache项目持续集成 一:前言 1. Jenkins jenkins版本大全http://mirrors.jenkins-ci.org/ ...
- Jenkins + svn + maven 构建持续集成环境搭建
Jenkins简介 Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括: ...
- Jenkins+Maven+SVN快速搭建持续集成环境
http://www.cnblogs.com/sunzhenchao/archive/2013/01/30/2883289.htmlhttp://blog.csdn.net/pein_zero/art ...
- Jenkins+ANT+SVN快速搭建持续集成环境
伟大的语言都从helloworld开始,这里我们用Jenkins+ANT+SVN来搭建这一套持续集成环境. 环境准备: 一台已经配置好Jenkins和Ant的机器. 项目准备: 用Ecplise建立一 ...
- Jenkins+MSbuild+SVN实现dotnet持续集成 快速搭建持续集成环境
Jenkins是一个可扩展的持续集成引擎,Jenkins非常易于安装和配置,简单易用,下面开始搭建dotnet持续集成环境 一.准备工作 1.系统管理-->管理插件-->可选插件中找到MS ...
- Jenkins+Maven+SVN快速搭建持续集成环境(转)
Jenkins是一个可扩展的持续集成引擎,Jenkins非常易于安装和配置,简单易用,下面看看我们是如何几分钟就快速搭建一个持续集成环境吧. 假设我们目前已经有2个maven项目:entities(J ...
- (转)使用CruiseControl+SVN+ANT实现持续集成之二
1. 环境搭建 1.1. 下载及目录介绍 从官方站点http://cruisecontrol.sourceforge.net/download.html下载一份最新的 CC 压缩包,最新的版本号为2. ...
- Jenkins+svn+ant+tomcat持续集成
转载自 http://www.cnblogs.com/liuhaixia/p/7267473.html Jenkins是基于Java开发的一种持续集成工具,用于监控秩序重复的工作.通过Jenkins+ ...
- Jenkins+Ant+SVN+Jmeter实现持续集成
一.什么是持续集成? 待补充 二.说明: 本次框架介绍中不涉及到介绍框架的构建过程,介绍如何构建环境详细的构建见前篇文章: jmeter+Jenkins持续集成(邮件通知) Jmeter+Jenki ...
随机推荐
- PHP导出excel信息表格
//导出表格public function get_exel($fileName,$headArr,$list){//导入PHPExcel类库,因为PHPExcel没有用命名空间,只能import导入 ...
- php 接收 Android 传递的json 转 数组 问题
过程:Android 拼接一个 json格式的数据 传值 ,php 接收 转为数组 json_decode 取值 json格式为:{"goods":{"1000 ...
- 使用PHP对文件进行压缩解压(zip)
使用虚拟主机进行文件上传时最常用的工具莫过于FTP了,但是使用FTP有一个弊端就是文件太多时上传或下载速度比较慢,如果上传时将文件打包,上传后在 空间解压缩,同样下载前将文件打包压缩以压缩包的形式下载 ...
- [Linux]Vim的安装及使用
1.安装:$sudo apt-get install vim 2.查看Vim所在路径$whereis vim 3.启动Vim $'/usr/bin/vim.tiny' 4. 退出Vim窗口:Ctrl ...
- 【转】深入 char * ,char ** ,char a[ ] ,char *a[] 内核
原文出处:http://blog.csdn.net/daiyutage/article/details/8604720 C语言中由于指针的灵活性,导致指针能代替数组使用,或者混合使用,这些导致了 ...
- SpringMVC源码阅读(三)
先理一下Bean的初始化路线 org.springframework.beans.factory.support.AbstractBeanDefinitionReader public int loa ...
- SQL Server日期函数之获得一个月中的天数
SQL Server日期函数之获得一个月中的天数在实际中的应用比例还是占为多数的,如果你对这一技术,心存好奇的话,以下的文章将会揭开它的神秘面纱,望会在以后的学习或是工作中带来很大的帮助. 获得一个月 ...
- Python如何进行cross validation training
以4-fold validation training为例 (1) 给定数据集data和标签集label 样本个数为 sampNum = len(data) (2) 将给定的所有examples分为1 ...
- 获取设备mac地址和md5加密
SGMSettingConfig.h #import <Foundation/Foundation.h> @interface SGMSettingConfig : NSObject{ N ...
- 【HTTP】IE的URL的最大长度限制和如何解决URL最大长度的限制
习惯了用户URL传递参数的方便和快捷,然而大多数人并没有了解通过GET方式请求页面并传递一个过长的参数的话,IE浏览器会自动的截取超出最大长度的字符的!微软的权威解释,IE的url最大长度是2083个 ...