先让我给描述一下怎么叫一个自动构建或者说是持续集成 :

就拿一个B/S系统的合作开发来说,在用SVN版本控制的情况下,每个人完成自己代码的编写,阶段性提交代码,然后测试-修改,最后到所有代码完工,进行总的测试-修改,最后发布测试。往往在最后发布阶段,会集中出现好多问题,并且这样的问题不好解决,因为最后一次的测试,前些阶段隐藏的问题就都暴露出来了!
持续自动构建就是要解决这个问题!
首先我们用到的工具有:
1.SVN
2.Jenkins
3.MSBuild
4.HMailSever
5.Nexus
SVN:它的主要用途就是整合项目代码,将团队开发的程序,集合到一起,起到一个统一整合程序的作用!例如,将三层架构中每层的代码,提交到一个版本库。同时,还起到一个备份作用,也就是说,在我们的每一次提交,对版本库的每一次改动,都会由它在其他地方再去备份一个一模一样的版本库,这样就是使得我们的源代码非常安全。(备份资料,这可是老师经常教导,常重装系统的童鞋都清楚!)
Jenkins:现在只知道这是一个非常强大的框架,只需要明白,它完成的任务是:加载源程序代码,在我们的自动构建中,是从SVN的版本库中加载,当然还可以通过别的路径加载。自动编译、发布、报错,按照完整的发布步骤自动执行,最后报告测试结果,Jenkins,非常人性化,他可以把结果,以邮件的方式反馈结果。
MSBuild:Jenkins针对每种开发环境,都有其相应的插件来完成测试。在.NET环境下,这个功能是靠MSBuild来实现。
这两个的关系就是:首先要安装上Jenkins,然后安装该插件,才能完成.NET程序的自动构建测试。
HmailSever:这是一个邮件服务器。它的作用是,在没有外网的情况下,设置自己的邮件服务器,相当于自己建了一个“163邮箱”,完成邮件的沟通。既然Jenkins提供了邮件提醒功能,就不得不好好利用了。有些项目的开发,需要关闭外网,有了它就解决了邮件的收发。
Nexus:是一个私服器,发挥着中介功能,提供各个服务器之间的连接。要想在不提供外网的条件下,完成自控构建、编译、发布测试,是少不了它的。
通过这些工具,在团队开发中,只需我们完成每个小阶段的编程后,向SVN提交,通过Jenkins马上就能知道发布后的结果(哈哈哈,坐等邮件就OK 喽!)。这就避免了,最后集成的时候因为修改BUG而焦头烂额了。
此乃团队开发的利器啊!!

.net 基于Jenkins的自动构建系统开发的更多相关文章

  1. 基于Jenkins自动构建系统开发

    1  绪论 1.1 课题的研究背景 随着IT行业的不断发展,软件开发的复杂度也随着不断提高.与此同时,软件的开发团队也越来越庞大,而如何更好地协同整个团队进行高效准确的工作,从而确保软件开发的质量已经 ...

  2. Docker+Jenkins+Gogs 自动构建.Net Core

    Docker+Jenkins+Gogs 自动构建.Net Core 引言 jenkins+gags 全部采用Docker安装,通过jenkins插件ssh调用外部Docker构建 主要实现功能: gi ...

  3. 利用jenkins实现自动构建、部署,提升团队开发效率

    一大早就被群里的同学刷银川下雪的消息,看着我都发冷,突觉一阵凉风裹身,是不是该考虑秋裤了. 偏离主题,正文走起...... 使用jenkins目标:利用其结合maven完成自动构建,并部署到tomca ...

  4. [系统集成] Android 自动构建系统

    一.简介 android app 自动构建服务器用于自动下载app代码.自动打包.发布,要建立这样的服务器,关键要解决以下几个问题: 1. android app 自动化打包android 的打包一般 ...

  5. 新手避坑 -- 用 Jenkins +miniprogram-ci 自动构建微信小程序

    先看看效果: 要实现这样的效果,需要下面3步: 1.下载 node 依赖包 miniprogram-ci,编写预览和上传功能 2. 登录微信公众平台, 下载项目的privateKey+添加代码上传IP ...

  6. Gulp自动构建前端开发一体化

    gulp是基于Nodejs的自动任务运行器, 她能自动化地完成 javascript/coffee/sass/less/html/image/css 等文件的的测试.检查.合并.压缩.格式化.浏览器自 ...

  7. tomcat+svn+maven+jenkins实现自动构建

    首先说明一个各软件的版本: tomcat:apache-tomcat-8.5.16.tar.gz maven:apache-maven-3.5.0-bin.tar.gz svn:subversion- ...

  8. 基于web的网上书城系统开发-----需求分析

    网上书店管理系统主要针对中小型书店,图书管理员将图书信息整理归类发布到网上.,用户登录该网站后进行浏览图书信息.购买等活动. 前台客户输入的数据交给后台数据库处理并及时反馈给双方.客户和管理者拥有相应 ...

  9. 一、Jenkins 安装(自动构建发布)

    war 包方式安装 官方下载地址:https://jenkins.io/download/ ,下载war包,并上传到服务器(案例中是把war包放在了 /usr/local/jenkins 里面) 运行 ...

随机推荐

  1. iconfont-矢量图标字体

    二.矢量图标使用 1.进入:http://www.iconfont.cn/  搜索你图标的关键字,然后将需要的图标字体加入购物车 加入购物车之后,添加到项目 2.点击查看在线连接,生成css代码,把代 ...

  2. poj 2369(置换群)

    Permutations Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 3041   Accepted: 1641 Desc ...

  3. CVE-2012-4969

    Microsoft Internet Explorer ‘CMshtmlEd::Exec’函数释放后使用漏洞(CNNVD-201209-394) Microsoft Internet Explorer ...

  4. 【51nod】1251 Fox序列的数量

    题解 容斥题 我们枚举出现次数最多的数出现了K次 然后我们需要计算的序列是所有数字出现个数都不超过K - 1次 我们枚举不合法的数字的数目j,说明这个排列里除了我们固定出现K次的数至少有j个数是不合法 ...

  5. lr参数化取值与连接数据库

    TXT文本,EXCEL表格以及数据库中的表都可以作为参数的数据集载体,LR都是支持的. 特别提醒: 1.在形成数据池之后,数据库中的数据变化不会影响数据池中的数据. 2.数据文件一定要以一个空行结束, ...

  6. Django实战(17):ajax !

    现在让我们来通过ajax请求后台服务.当然首选要实现后台服务.关于“加入购物车”,我们需要的服务是这样定义的: url:    http://localhost:8000/depotapp/API/c ...

  7. linux下文件转码

    一.工具介绍 enca是一个很好用的文件转码工具,使用命令 sudo apt-get install enca 即可安装 二.基本用法 1.查看文件编码 $ enca filename 2.文件转码 ...

  8. Sqlite可视化工具sqliteman安装(转)

        Sqlite可视化工具sqliteman安装 1.安装前准备 系统要求:RedHat 6.9 Qt库版本:4.2及以上 2.安装文件 采用源码方式安装 可用下面地址自行下载 https://s ...

  9. Wannafly挑战赛9 B - 数一数

    链接:https://www.nowcoder.com/acm/contest/71/B来源:牛客网 题目描述 设s,t为两个字符串,定义f(s,t) = t的子串中,与s相等的串的个数.如f(&qu ...

  10. react篇章-事件处理

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title&g ...