移动开发中的CI方案简介

移动开发中的CI方案简介

Continuous integration (CI) 是软件工程中的重要概念,以前在传统的软件开发中用的比较多(以前常说的daily build or nightly build意思和CI差不多)。现在随着移动App的流行,相关的工具以及方法论在移动开发中也有所体现。这里简单说一下现在移动研发领域的CI现状(CI工具一般都是跨语言的,所以下面列出的这些工具大部分也能在前后端开发中使用)。

现在CI的解决方案很多,有开源的也有收费的。开源的免费,绝大部分功能都够用,不过出问题得自己处理,不过如果选热门的开源解决方案的话基本上常见问题都有人帮你踩坑了,所以这点不用担心(反之如果选冷门开源方案一定要做好自己改代码的心理准备)。商业方案除了贵以外没啥缺点,一般就是衡量价格、功能,以及各厂商的差异化功能。

开源方案

  • Jenkins

    Jenkins是一款著名的开源CI工具,除了界面丑点,其他功能基本上和一般收费方案没什么区别。很多公司团队会基于Jenkins做二次开发,把后端、前端和移动端的CI都集成到Jenkins中。

  • Travis CI

    Travis CI是一个开源的在线持续集成服务,用来构建和测试托管在Github上的代码。它和Github类似,对开源项目免费,其他项目要收费。这个用来做个人项目比较方便,如果公司要用的话可以选它的付费企业版服务。

  • GitLab

    GitLab是互联网公司常用的开源代码管理工具,在8.0版本上也有CI功能了。

收费方案

  • Circle CI

    Circle CI本身是在线服务,不过企业版支持私有化部署。

  • Bitrise

    Bitrise是专门为移动应用而设计的CI在线服务,企业版支持私有化部署。

  • Visual Studio App Center

    Visual Studio App Center和Bitrise一样,是微软专门为移动应用而设计的CI在线服务

这里只是对市面上常见的CI方案做了下汇总,如果想看看各种方案的详细对比可以看这篇文章

引用