开源分支与发布流程 (Open Source)

常规发布

所有版本都从 dev 分支发布。DefectDojo 团队致力于保持以下发布节奏:

  • 次要版本(Minor):每月至少一次,于每月的第一个星期一发布。
  • 补丁(Patch):每周一发布。
  • 安全发布(Security):可能根据严重程度在常规节奏之外发布,同样从 dev 发布。

没有单独的缺陷修复分支,也没有从 master 分出的热修复分支。所有 PR,无论是缺陷修复还是新功能,都以 dev 为目标分支。

GitHub Actions 是权威依据。发布流程是半自动化的。每次发布的步骤如下:

  1. 从 dev 创建发布分支,并准备一个针对 master 的 PR(详情) –> 维护者验证并手动合并该 PR
  2. 打标签、发布草稿版本并构建/推送 Docker 镜像(详情) –> 维护者整理 release-drafter 生成的发布说明并发布该版本
  3. 创建一个将 master 合并回 dev 的 PR,以重新对齐各分支(详情)

安全发布

与安全问题相关的 PR 通过安全公告完成,该机制可让团队私下处理代码,而不会过早披露漏洞。

发布模型

图表使用 plantUML 创建。可在 https://www.planttext.com 找到基于网页的 PlantUML 编辑器。