cancel
Showing results for 
Search instead for 
Did you mean: 

Release Version Control?

BBlad.1
Associate II

Hi,

I'm pretty new to the st and embedded world.

I'd like to know what is the recommended way/how do you version control your releases?

I'm looking for something better than manually writing the release version in as a const parameter in a configuration file.

Maybe something similar to Java's Meta-Inf file?

Thank you

2 REPLIES 2
TDK
Guru

Use git or other version control software of your choice, create a tag and add the compiled hex file at each release. Output __DATE__ and __TIME__ during startup to the debug output.

I'm a fan of https://calver.org/ for the naming scheme.

If you feel a post has answered your question, please click "Accept as Solution".
Pavel A.
Evangelist III

We delay assigning release numbers or versions until building deliverables (binaries).

Then we record the assigned version and matching version control tags in the release notes.

Our build tooling puts the version info onto the binaries and generated release journal.

For STM32 projects we use python scripts to patch binary files.

The code can access the patched info and output debug prints, as @TDK advices.

/* but we avoid __DATE__ and __TIME__ because they cause non-reproducible builds */