在开发游戏的过程中,有没有遇见过这样的对话
测试:给我一个测试包
开发:稍等我给你编译一个
10分钟以后......
测试:包打好了吗?
开发:我电脑比较卡 等一会
30分钟以后....
开发:包打好了
我相信大家很多开发都遇见过这种问题,那么我们有什么好的解决方案呢?目前我给大家推荐一款软件。 就是大名鼎鼎的jenkins
Jenkins是一个开源的、提供友好操作界面的持续集成(CI)工具,起源于Hudson(Hudson是商用的),主要用于持续、自动的构建/测试软件项目、监控外部任务的运行(这个比较抽象,暂且写上,不做解释)。Jenkins用Java语言编写,可在Tomcat等流行的servlet容器中运行,也可独立运行。通常与版本管理工具(SCM)、构建工具结合使用。常用的版本控制工具有SVN、GIT,构建工具有Maven、Ant、Gradle。
下面这张图就是我们的整个工作流程
下面我通过一个编译cocoscreate 的项目给大家展示一下(如果不会安装jenkins的可以自己搜索一下,实在不行就可以)
登录Jenkins, 点击左侧的新建,创建新的构建任务。
跳转到如下界面。任务名称可以自行设定,但需要全局唯一。输入名称后选择构建一个自由风格的软件项目(其他选项不作介绍)。并点击下方的确定按钮即创建了一个构建任务。之后会自动跳转到该job的配置页面。
下图是构建任务设置界面,可以看到上方的几个选项"General", "源码管理", "构建触发器","构建环境", "构建", "构建后操作"。下面逐一介绍。
1.General
General是构建任务的一些基本配置。名称,描述之类的。
里面其他的一些选项大家可以自行查看jenkins 文档。
2.源码管理
这里大家可以选择自己的源码管理 是git 还是 svn 或者 是没有。
3.构建触发器
触发远程构建(例如,使用脚本): 该选项会提供一个接口,可以用来在代码层面触发构建。这里不做介绍,后期可能会用到。
Build after other projects are built: 该选项意思是"在其他projects构建后构建"。这里不作介绍,后期可能会用到该选项。
Build periodically: 周期性的构建。很好理解,就是每隔一段时间进行构建。日程表类似 linux crontab书写格式。如下图的设置,表示每隔30分钟进行一次构建。
Build when a change is pushed to GitLab:当有更改push到gitlab代码仓库,即触发构建。后面会有一个触发构建的地址,一般被称为webhooks。需要将这个地址配置到gitlab中,webhooks如何配置后面介绍。这个是常用的构建触发器。
Poll SCM:该选项是配合上面这个选项使用的。当代码仓库发生改动,jenkins并不知道。需要配置这个选项,周期性的去检查代码仓库是否发生改动。
4.构建环境
大家可以根据自己的选择来选择,这里我什么都没选择
4.构建
目前我们对这一步比较关键,因为cocoscreate 提供了命令行编译,这里我们选择Execute Windows batch command 如果是mac 电脑就选择shell 即可
这个就是我们的编译命令
6.构建后操作
构建后操作,就是对project构建完成后的一些后续操作,比如生成相应的代码测试报告.这里就不做太多的陈述。可以根据自己的需求来定制
最后点击保存
我们在点击build Now 就可以进行构建了。
上面过我只是给大家很简单的介绍了一下这个工具的使用,但是细心的同学就会发现他的好处,就是开发被解放出来了,我们但可以定制一些规则,让谁来构建,测试同学就不会在一直找开发来问了。在程序开发中能用工具解决的绝不用人。
对于上面的的方案你有什么想法呢?欢迎评论,留言。
Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved