版本控制
项目复杂后,版本控制会成为重要开发环节。它通常提供:
- 恢复先前代码和资源。
- 查看项目历史变化。
- 在隔离位置测试修改,准备好后合并。
PlayCanvas 将版本控制内置到编辑器。检查点是某一时刻的快照,构成项目历史;分支是独立开发线,可对应功能或成员,分支间修改互不影响;合并与冲突解决将两条开发线组合,同一数据均被修改时需要解决冲突,完成后目标包含双方修改。
PlayCanvas 中的版本控制
如果熟悉其他版本控制系统,以下对照可以帮助理解。
检查点类似 Git 或 Mercurial 的 commit,包含快照和说明消息。当前尚未创建检查点的修改类似工作目录或本地修改,不过 PlayCanvas 中它们实时共享给同一分支的其他成员。
AI 助手修改多个场景或资源前,可通过**编辑器 MCP 服务器**创建专用分支和检查点。完成后要求说明差异与冲突,恢复、硬重置和删除分支应独立确认。
不能任意删除检查点,但可恢复旧检查点,类似 git checkout <commit> 或 hg update -r <commit>。PlayCanvas 不提供游离 HEAD,只允许显式创建分支。恢复后再创建的检查点仍接在该分支最新检查点之后。
分支与其他系统类似,由检查点组成独立开发线。以其为当前分支的用户实时共享修改。工作完成可关闭分支,只有特定情况可删除。
合并类似其他系统,但发生在检查点之间,未写入检查点的修改不包含在合并中。目标分支会自动创建检查点,避免误丢修改。
版本控制如何影响存储
检查点和分支都会占用额外存储。
检查点只保存相对前一个检查点的变化,占用取决于新增资源、替换纹理等修改。
创建分支会复制检查点中的项目资源。每个打开分支完整计入存储,即使文件与其他分支一致。因此多个打开分支可能占用资源本身体积的数倍。
降低用量的方法:
- 关闭分支:移除其资源副本用量,保留检查点;重新打开后资源再次计入。
- 删除分支:还会删除检查点。应先关闭,确保资源也不再计入。只有未被合并进其他分支的分支可删除,且不可撤销。
- 硬重置到检查点:删除后续检查点,同样不可撤销。
其他检查点无法删除,仍占用历史存储。
需要更多存储可联系 [email protected],多数情况下可以免费提高额度。