Files
go-common/VERSION.md
2026-01-30 21:40:21 +08:00

3.2 KiB
Raw Blame History

版本管理说明

版本号规则

本项目遵循 语义化版本 规范:

  • 主版本号MAJOR:当你做了不兼容的 API 修改
  • 次版本号MINOR:当你做了向下兼容的功能性新增
  • 修订号PATCH:当你做了向下兼容的问题修正

版本格式:v主版本号.次版本号.修订号,例如:v1.0.0v1.1.0v2.0.0

发布新版本

方式1使用发布脚本推荐

# 使用发布脚本(会自动验证版本格式、检查未提交更改等)
./scripts/release.sh v1.0.0 "Release version 1.0.0"

方式2手动创建标签

# 1. 确保所有更改已提交
git add .
git commit -m "Prepare for release v1.0.0"

# 2. 创建版本标签
git tag -a v1.0.0 -m "Release version 1.0.0"

# 3. 推送标签到远程仓库
git push origin v1.0.0

# 或者一次性推送所有标签
git push origin --tags

验证标签

# 查看所有标签
git tag -l

# 查看标签详情
git show v1.0.0

# 查看标签列表(带注释)
git tag -l -n

调用方如何使用版本

方式1使用最新版本推荐用于开发

go get git.toowon.com/jimmy/go-common@latest

方式2使用特定版本推荐用于生产

# 使用具体版本号
go get git.toowon.com/jimmy/go-common@v1.0.0

# 使用版本范围(自动选择最新版本)
go get git.toowon.com/jimmy/go-common@v1.0

方式3在 go.mod 中指定版本

module your-project

require (
    git.toowon.com/jimmy/go-common v1.0.0
)

然后运行:

go mod tidy

方式4更新到最新版本

# 更新到最新版本
go get -u git.toowon.com/jimmy/go-common@latest

# 更新到最新补丁版本(如从 v1.0.0 更新到 v1.0.1
go get -u=patch git.toowon.com/jimmy/go-common

# 更新到最新次版本(如从 v1.0.0 更新到 v1.1.0
go get -u=minor git.toowon.com/jimmy/go-common

版本发布流程

  1. 开发完成:确保所有功能已实现并通过测试
  2. 更新版本号:在 README.mdVERSION.md 中更新版本号
  3. 提交代码:提交所有更改到 Git
    git add .
    git commit -m "Prepare for release v1.0.0"
    
  4. 创建并推送标签
    # 使用脚本(推荐)
    ./scripts/release.sh v1.0.0 "Release version 1.0.0"
    
    # 或手动创建
    git tag -a v1.0.0 -m "Release version 1.0.0"
    git push origin v1.0.0
    
  5. 验证:在其他项目中测试是否能正确获取该版本
    # 在新项目中测试
    go get git.toowon.com/jimmy/go-common@v1.0.0
    

当前版本

当前版本:v1.0.0

版本历史

  • v1.0.0 (当前版本)

    • 初始版本
    • 包含所有基础工具类migration、datetime、http、middleware、config、storage、email、sms、factory、logger
  • v1.1.0 (未发布)

    • storage新增本地文件夹存储LocalStorage支持将文件/图片上传到本地目录
    • config新增 localStorage 配置段(baseDir / publicURL
    • factory新增 GetStorage(),并支持 Local/MinIO/OSS 自动选择优先级Local > MinIO > OSS