Files
CC-Framework.BriskGameServer/Brisk Package 发布流程.md

3.0 KiB
Raw Blame History

Brisk Package 发布流程

本文档用于约定当前仓库的发布方式。

仓库地址:

  • http://private.lightyears.ltd:18650/foldcc/CC-Framework.BriskGameServer.git

开发态

当前仓库是 Unity 原始开发工程:

  • SDK 活代码放在 Assets/BriskSdk/Runtime
  • 示例脚本放在 Assets/BriskSdk/Samples/QuickStart
  • 示例场景放在 Assets/Scenes/BriskQuickStartScene.unity

发布态

对外发布 Git Package 时,不直接把整个 Unity 工程作为包发布。

统一从以下目录产出 package 内容:

  • PackageSource/com.foldcc.cc-framework.BriskGameServer

该目录用于承载:

  • package.json
  • README.md
  • CHANGELOG.md
  • Documentation~
  • Runtime
  • Samples~

同步步骤

在准备发布分支或发布 tag 前,执行:

./Tools/Sync-BriskPackage.ps1

脚本会自动:

  1. Assets/BriskSdk/Runtime 同步到 PackageSource/com.foldcc.cc-framework.BriskGameServer/Runtime
  2. Assets/BriskSdk/Samples/QuickStart 同步到 PackageSource/com.foldcc.cc-framework.BriskGameServer/Samples~/QuickStart
  3. Assets/Scenes/BriskQuickStartScene.unity 一并复制到 package sample 目录

分支与 Tag 规范

建议采用以下命名:

  • 日常开发分支:
    • feature/...
    • fix/...
  • 对外发包分支:
    • release/upm-vX.Y.Z
  • 对外发包 tag
    • upm/vX.Y.Z

示例:

  • release/upm-v0.1.0
  • upm/v0.1.0

推荐发布动作

每次准备发版时,建议严格按以下顺序执行:

  1. 在开发分支完成 SDK 功能与测试
  2. 更新 Assets 下源码与示例场景
  3. 运行 ./Tools/Sync-BriskPackage.ps1
  4. 检查 PackageSource/com.foldcc.cc-framework.BriskGameServer 输出结果
  5. 更新 package.json 版本号
  6. 更新 CHANGELOG.md
  7. 创建发布分支 release/upm-vX.Y.Z
  8. 提交发布目录改动
  9. 打 tag upm/vX.Y.Z
  10. 推送发布分支与 tag

外部项目接入示例

外部项目通过 Git Package Manager 接入时,建议固定到 tag

http://private.lightyears.ltd:18650/foldcc/CC-Framework.BriskGameServer.git?path=/PackageSource/com.foldcc.cc-framework.BriskGameServer#upm/v0.1.0

这样做的好处:

  • 外部项目不会直接依赖整个 Unity 开发工程
  • 接入版本稳定,可回滚
  • package 内容和开发态源码解耦

当前注意事项

当前 package.json 中的包名仍然沿用既定命名:

  • com.foldcc.cc-framework.BriskGameServer

这符合当前项目命名诉求,但从 UPM / npm 生态习惯看,正式大范围外发前,建议再确认一次是否需要改成全小写形式,以避免潜在兼容性问题。

建议发布流程

  1. 在开发分支完成功能
  2. 运行 ./Tools/Sync-BriskPackage.ps1
  3. 检查 PackageSource/com.foldcc.cc-framework.BriskGameServer 内容
  4. 切到对外发布分支,或基于当前提交创建发布分支
  5. 只保留 package 所需目录,或以该子目录作为 git package 子路径
  6. 更新 package.json 版本号与 CHANGELOG.md
  7. 打 tag 给外部项目接入