版本管理

Galacean 有一套成熟的版本管理方案,本文将以 @galacean/engine 为例,介绍 Galacean 的管理工具,命名规则,发布策略及依赖管理。

版本管理工具

Galacean 使用的版本管理工具是 Git ,代码都托管在 GitHub 上,并且所有的开发流程,包括规划,里程碑,架构设计在内的信息,全部都公开在 GitHub 的项目管理中,你可以通过创建 issue 与提交 PR 参与到引擎的建设当中。

包管理工具

Galacean 使用的包管理工具是 NPM ,您可以通过 npm 指令安装 @galacean/engine:

npm install --save @galacean/engine

然后在业务中引入使用:

import { WebGLEngine, Camera } from "@galacean/engine";

版本命名规则与发布策略

Galacean 版本号格式是 MAJOR.MINOR.PATCH-TAG.X 。其中 MAJOR.MINOR 代表里程碑版本,通常伴随大量功能更新, PATCH 版本更新则表示向下兼容的错误修复,TAG 标签标记了该发布版本的用处。

TAG释义
alpha内部测试版,用于早期功能研发,有里程碑内的新功能但稳定性较差,例如 1.3.0-alpha.3
beta公开测试版,内部测试已基本完毕,稳定性较强,但可能仍有较少的问题与缺陷,例如 1.2.0-beta.7
latest正式稳定版,经过长期测试和验证,无重大缺陷,可投入生产的推荐版本,例如 1.1.3
custom内部为了测试特定功能而发布的,例如 0.0.0-experimental-1.3-xr.9

在 Github 或 NPM 上可以查看所有可用版本。

版本升级

每个里程碑版本更新迭代时会同步发布版本升级引导,其中包含了本次更新的内容以及 BreakChange,可依据此文档进行版本的更新迭代。

版本依赖

情况规则
核心包核心包之间请保证版本一致
工具包 依赖 核心包保证工具包版本与引擎核心包的大版本一致,以 1.3.x 版本的工具包为例,依赖 1.3.y 版本的核心包
二方包 依赖 核心包二方生态包对引擎版本的依赖关系,请参照对应文档说明,如 Lottie

基本规则如上,若有特殊说明,请按照说明选择依赖。

其他

编辑器升级引擎版本

在 项目设置 中可以控制运行时的引擎版本。

运行时输出的版本信息

Galacean 大部分包运行时会在 Console 输出版本信息,

image.png

通常也会以此为依据判断包版本依赖是否出现:

  • 版本依赖不符合规则?
  • 出现了多个不同版本的同名依赖?

若出现以上问题,请排查工程并解决依赖问题。

这篇文档对您有帮助吗?