dev.to | 📄 原文链接 | 2026-08-09 收录

从多仓库到单体仓库:自动化 6 个 Go 微服务的发布,提速 15 倍

来源:dev.to — 2026-08-09

📋 概述

作者上个月切一个跨六个 Go 微服务仓库的发布要花一个多小时:逐个打 tag、等 CI、更新 SDK 的 go.mod、再等 CI……在并行处理 api、cli、worker 时还曾因忘了 bump cli 的依赖而让构建在晚上 11 点崩溃。那是他最后一次手工发布。本文讲述了用 Jenkins + Python + GitLab 自动化整个流程后,意识到多仓库架构才是真正的瓶颈,于是把所有模块折叠进一个 Go 单体仓库(monorepo),发布速度提升了 15 倍。整套方案跑在他的 MacBook 上,可 fork 复现。项目模拟了 6 个有严格依赖顺序的 Go 模块,前三个模块串行(log→sdk→utils),后三个可并行。

🔑 核心要点

💡 金句

我忘了 bump cli 的依赖,构建在晚上 11 点崩溃了——那是我最后一次手工发布。
← 返回 dev.to 首页