随着我的微服务项目的发展,我想要一些关于如何组织微服务 repo 的建议。
项目布局:
- xxx-父母/
- 盖茨/
- 祖尔/
- 网关/
- 配置/
- 配置服务器/
- 配置文件/
- 寄存器/
- 尤里卡/
- 应用/
- 用户服务/
- 钱包服务/
- 订购服务/
- ...
- 盖茨/
父级和第 2 级是 maven pom 项目,第 3 级被打包为 jar。
选项:
- 所有 3 个级别中的每个子模块作为单独的 git 存储库。
这就是我现在所做的,像 jenkins 一样使用 CI/CD 很容易。
但是随着项目的增长,要获得整个项目,需要多次克隆。 - 整个项目作为一个 git repo。
易于克隆,但在 CI/CD 或任务分配中耦合,也容易产生 git 冲突。 - 父级作为回购,每个第 2 级和第 3 级作为回购。
这是 1 和 2 的权衡。
你如何在你的项目中做到这一点?