为了满足不同开发团队和企业对APICloud(www.apicloud.com)的个性化开发需求,企业版和专业版新增svn专属通道,提升APP开发效率和后期的维护更新。具体功能如下:
1、开通专属SVN服务器,提高代码上传速度,提高开发效率
2、支持指定SVN版本号打包,方便对新旧版本的安装包进行维护更新
3、支持指定SVN打包路径,满足个性化代码打包需求
设置说明:
- SVN 设置:开启后,可使用指定的代码版本和编译路径进行云编译.默认使用 Head 最新版本和根目录下的项目同名文件夹.
- SVN 版本:指定用于云编译的代码版本.默认使用 Head 最新版本.代码版本信息可在 网站控制台—>代码查看,也可使用第三方SVN工具,如 TortoiseSVN(“小乌龟”)查看.
- 云编译-进行指定SVN云编译。
APICloud企业版SVN专属通道
SVN版本号打包使用场景:
普通SVN版本 | SVN专属通道 |
开发者每次修改代码并提交到云端后,都会对应产生一个唯一的版本编号.APICloud 支持通过唯一的版本编号,获取此版本对应的全部代码.APICloud 云编译,默认使用开发者最后一次代码提交产生的唯一版本号所对应的代码,来进行云端编译.这样,每次云端的结果,都与开发者最后一次提交到云端的代码保持一致. | 开发者可选择性地使用任意版本的代码进行云端编译.这将大大有利于开发者排查突发bug的效率,准确定位问题产生的时间和最可能引起问题的文件;同时大大提高开发者开发工作和阶段验收的并行度,不用再担心因为新需求的代码而影响了上一阶段工作的验收和测试. |
使用场景举例
1. 云编译,代码突然不好使了...
•使用前: 直觉很重要.万一,不是自己代码问题呢?
•使用后: 我确定我没改过那一块的代码.我云编译昨天的代码给你看看?!
2. 想保留一个稳定准发布版本,又想继续开发新需求...
• 使用前: 复制大法好.先复制备份下,千万不能动呀....
• 使用后: 昨天的代码用于发布,版本号是X,你直接云编译那个版本就行了,都测试过了!
3. 突然想看看几个星期以前的代码 ....
• 使用前: 我记得那个功能原来是好的,后来...后来发生了什么....
• 使用后: 我查下那个功能对应的代码版本.好,找到了,版本号是X!直接编译云编译这个版本的代码,看下就行了,不用猜了!
指定SVN打包路径使用场景:
普通SVN版本 | SVN专属通道 |
APICloud 云编译功能与代码管理功能是相通的.每次云编译,会自动从SVN代码仓库根目录,获取全部文件,来进行云端编译.这对整体结构简单,规模较小的项目,非常高效 | 针对规模较大或使用了较多最新的JS技术,如webpack,项目需要严格分离测试环境和发布环境的开发者,我们推出了自定义打包路径的服务.当您指定一个特定的SVN相对路径后,如 output,我们的云编译服务器将只尝试从您的SVN仓库的 output 目录下获取代码.您其他目录下的任何代码或资源文件,将不会以任何方式出现在您的项目中.这样,更加严格和有效地保证您的代码安全. |
使用场景举例
1. 使用了webpack预编译,不想把预编译前的源码打包进去...
• 使用前: 要上线了,我先把原始文件 js 删除下...
• 使用后: release 目录是预编译版本的代码,直接云编译那个目录就行了!
2. 有多个代码分支,想从不同分支云编译...
• 使用前: 代码分支...好像不支持...只能手动备份了...
• 使用后: 分支都放 branches 目录下,直接选择对应版本的代码云编译即可!
3. 有一些证书或核心配置一类的安全文件,是绝对不想包换在应用中暴露给用户的
• 使用前: 这个配置很重要,可千万不能给用户看到呀...那就不用SVN管理了吧...谁把配置给改了?怎么不好使了?
• 使用后: 核心安全相关的配置,大家统一放到*** 目录下,云编译时,记得选择其他目录.
特别说明:此处的"分支",指的是将不同版本的项目代码放于应用名同名根目录下,从而模拟出来的"分支",与 SVN 自身的分支"branch"不同.