conventional-commits / conventionalcommits.org

The conventional commits specification

Home Page:https://conventionalcommits.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

How to use conventional commits to generate version for different products in monorepos?

brupelo opened this issue · comments

When it comes to generate versions out of conventional commits from a repo that contains only one product/package things are easy, you just need to use one tool that loops through all commits and computes your product version,
so far so good.

But what happens in a monorepo that contain multiple products that needs to track different versions? Let me put you an example, the azure sdk for python, how would you use conventional commits effectively
for these type of repos?

I'm trying to come up with a strategy that obviously scales up, we're talking about automatic version generation of the different monorepo products at the pipeline level.

Hi @brupelo - I'm managing a large monorepo with over 175 independently versioned packages and have written my own tool to compute version bumps, changelogs and perform releases entirely based on Conventional Commits (and analysis of files touched by git commits). So far it's been flying totally under the radar, but I've been doing hundreds of releases without a hitch since late 2021... Maybe you find it useful too: monopub