Skip to content

Git 提交规范

本项目的 Git 提交信息遵循以下约定格式,旨在提供清晰、一致的提交历史,便于追根溯源与自动化工具处理。

提交格式

<type>[(<scope>)]: <description>

[body]

提交信息包含三个部分:类型 type、可选的作用域 scope描述 description正文 body

类型

类型 说明 示例
feat 新功能开发 feat: 实现文件批量保存功能
fix 修复 Bug fix: 修复下载任务无法创建的问题
refactor 代码重构,不涉及功能变更 refactor: 重构用户头像的读写方法
docs 文档更新 docs: 补充异步任务实现文档
chore 构建流程、配置、依赖等杂项变动 chore: 系统版本号更新 3.1.0
perf 性能优化 perf: 优化 ffmpeg 生成视频封面的性能
test 测试相关 test: 补充压缩引擎单元测试
remove 移除不再需要的功能或代码 remove: 废弃旧版文件上传接口

作用域(可选)

作用域用括号包裹在类型后方,用于标明变更所在的模块范围,例如:

  • feat(archive): — 压缩引擎模块的变更
  • fix(webdav): — WebDAV 模块的 Bug 修复

描述

  • 必须使用中文描述
  • 使用祈使句现在时(如"实现"而不是"实现了"或"已实现")
  • 简明扼要信息完整,让读者能理解本次提交的意图
  • 若有必要,可在详细描述中补充动机、背景或实现方式

正文(可选)

  • 用于补充描述变更的动机、背景、实现细节等信息
  • 可以包含多行文本,建议使用 Markdown 格式进行排版
  • 在正文中可以引用相关的 Issue、PR 或其他提交

示例

feat: 实现文件批量保存功能,优化解压异步任务的内存管理与存储效率
fix: 修复 Linux 环境下无法创建 webshell 会话的问题
refactor: 将 ArchiveManager 中新的压缩引擎管理机制拆分到新的 ArchiveEngineManager 接口
docs: 添加压缩引擎扩展说明文档
chore: 调整 sfc-archive 和 sfc-api 的依赖关系
perf: 提升 samba 存储挂载稳定性,优化资源释放逻辑
feat(archive): introduce engine-based archive api and zip4j/junrar support

分支管理

  • 日常开发在 develop 分支进行
  • 大的重构或实验性功能可单独拉出特性分支,完成后合回 develop
  • 对已开发的功能进行部署测试时,将develop分支合并到deploy分支,触发Github CI/CD流程进行自动部署
  • 发版时从 develop 合并至 master 分支,并打上版本标签

注意事项

  • 提交前检查变更内容是否完整,避免遗漏未提交的关联文件
  • 优先使用中文描述,确保团队成员能快速理解
  • 一个提交应尽量聚焦于一个变更意图,避免将无关的改动混入同一次提交