GitHub 十大 CI 工具
简评:GitHub 上最受欢迎的 CI 工具。
持续集成(Continuous integration)指的是,频繁地(一天多次)将代码集成到主干。
持续集成工具让产品可以快速迭代,同时还能保持高质量,可以快速的发现错误,防止分支大幅偏离主干。
持续交付(Continuous delivery)指的是,频繁地将软件的新版本,交付给质量团队或者用户,以供评审。如果评审通过,代码就进入生产阶段。
有不少的 CI 和 CD 工具可以与 GitHub 集成,其中有一些可以通过 GitHub Marketplace 快速安装,你可以做出一些选择。
找到适合自己的工具有一些因素,包括:
- 编程语言和应用程序架构
- 操作系统和浏览器
- 团队的经验和技能
- 扩展功能和增长计划
- 依赖系统的地理分布和谁用过它们
- 包装和交付目标
没有完美的 CI 工具,但总有最适合你的,你必须做出选择,复杂度还是简单易用。例如,你想测试针对某个平台使用特定编程语言编写的小型应用程序,那么你不需要在几十种具有多种编程语言和框架的平台上测试嵌入式软件控制器工具的复杂性。
我们搜集了 GitHub 上使用最多的 10 个 CI 工具:

他们分别是:
- Travis CI
- Circle CI
- Jenkins
- AppVeyor
- CodeShip
- Drone
- Semaphore CI
- Buildkite
- Wercker
- TeamCity
这些工具的只默认或者预设的设置完全够用,你不在需要费力寻找最好的那个,是不是感觉轻松了很多?
GitHub 十大 CI 工具的更多相关文章
- 构建ASP.NET网站十大必备工具
最近使用ASP.NET为公司构建了一个简单的公共网站(该网站的地址:http://superexpert.com/).在这个过程中,我们使用了数量很多的免费工具,如果把构建ASP.NET网站的必备工具 ...
- 2018全球十大测试工具Top2 Katalon
引言 由Capgemini,Sogeti和Micro Focus发布的2017-2018年世界质量报告中,Katalon超越老牌测试工具UFT(源自QTP)成为黑马新秀,在全球十大自动化测试工具中排名 ...
- MySQL管理员珍藏:十大必备工具盘点
作者:dongdongzzcs 第1页: [IT168 专稿]本文的作者Daniel Nichter是MySQL工具的开发者,他为MySQL管理员推荐了十款必备工具.以下是全文内容: MySQL是一套 ...
- 十大 CI/CD 安全风险(三)
在上一篇文章,我们了解了依赖链滥用和基于流水线的访问控制不足这两大安全风险,并给出缓解风险的安全建议.本篇文章将着重介绍 PPE 风险,并提供缓解相关风险的安全建议与实践. Poisoned Pipe ...
- 构建ASP.NET网站十大必备工具(1)
最近使用ASP.NET为公司构建了一个简单的公共网站(该网站的地址:http://superexpert.com/).在这个过程中,我们使用了数量很多的免费工具,如果把构建ASP.NET网站的必备工具 ...
- Linux开发环境必备十大开发工具
Linux是一个优秀的开发环境,但是如果没有好的开发工具作为武器,这个环境给你带来的好处就会大打折扣.幸运的是,有很多好用的Linux和开源开发工具供你选择,如果你是一个新手,你可能不知道有哪些工具可 ...
- SQLServerDBA十大必备工具
曾经和一些DBA和数据库开发人员交流时,问他们都用过一些什么样的DB方面的工具,大部分人除了SSMS和Profile之外,基本就没有使用过其他工具了: 诚然,SSMS和Profile足够强大,工作的大 ...
- Python中的十大图像处理工具
转自:微信博客 机器学习研究会订阅号 微信号 功能介绍机器学习研究会由百度七剑客雷鸣先生创办,旨在推动AI的技术发展和产业落地.参与组织北大.清华”AI前沿与产业趋势“公开课,广泛的和高校.企业.创业 ...
- 【转】SQLServerDBA十大必备工具---让生活轻松点
曾经和一些DBA和数据库开发人员交流时,问他们都用过一些什么样的DB方面的工具,大部分人除了SSMS和Profile之外,基本就没有使用过其他工具了: 诚然,SSMS和Profile足够强大,工作的大 ...
随机推荐
- Flask之测试与部署
5.1 蓝图Blueprint 为什么学习蓝图? 我们学习Flask框架,是从写单个文件,执行hello world开始的.我们在这单个文件中可以定义路由.视图函数.定义模型等等.但这显然存在一个问题 ...
- 分布式爬虫搭建系列 之三---scrapy框架初用
第一,scrapy框架的安装 通过命令提示符进行安装(如果没有安装的话) pip install Scrapy 如果需要卸载的话使用命令为: pip uninstall Scrapy 第二,scrap ...
- Pascal三角形
Pascal算法呢,很简单,因为有了推导公式nCr,而当我们刚刚接触一个事物时,面对要解决的问题,归纳分析得到规律,再通过编程,控制流程,对象,语言,方法,属性得到我们想要的结果.如果这次不是PAsc ...
- jquery slideDown效果
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...
- java三元运算符详解
最近在带领实习生中遇到很多新手问与三元运算符有关的java题目,多数为代码结果题,少数为应用题.鉴于很多资料上对于java三元运算的讲解过于简单,网上的资料与题目也不是很完善,对于结果答案分析不一,故 ...
- 24-从零玩转JavaWeb-包装类、自动装箱、自动拆箱
一.什么是包装类 二.对基本数据类型包装的好处 三.装箱操作 四.拆箱操作 五.自动装箱 六.自动拆箱 七.字符串与基本数据类型和包装类的转换 八.包装类的缓存设计
- 通过helloworld来认识下backbone
Backbone主要涉及3部分:model,collection和view.而这个框架的优势在于:数据与视图分离,通过操作model来自动更新view. 根据我的个人经验,直接写个简单的例子是最最直观 ...
- jmeter 插件
- 2-javascript::笔记
0.位置: HTML 中的脚本必须位于 <script> 与 </script> 标签之间. 脚本可被放置在 HTML 页面的 <body> 和 <head& ...
- win32多线程 (六)信号量 Synchronization
比如:多个人来取仓库物品,我们为了做到多线程的互斥,一种方法是,对每个货品加个mutex互斥锁.另种方法,对窗口(只一个)加个mutex锁,但这样的话效率都比较低.而另钟解决办法是用信号量.信号量其实 ...