For all commits, create a latest release that is tagged as prerelease
For commits which are tagged
Not sure what the best strategy is for making sure the versions in the application and in Git stay in sync. Maybe keep major/minor in code, and patch and metadata passed in from the environment. Patch number might be "number of commits since last tag", and tags will always be "\.\.0". This could be problematic if the commit history isn't linear -- need to think about that.
Goals for a better versioning scheme:
uint16_t
as a flat number for the version numberuint64_t
, with a byte pattern such as:dev
for local builds,latest
for automatic builds)latest
GitHub releases on commitsps2link
's GitHub Actions workflow as an examplelatest
release that is tagged asprerelease
Not sure what the best strategy is for making sure the versions in the application and in Git stay in sync. Maybe keep major/minor in code, and patch and metadata passed in from the environment. Patch number might be "number of commits since last tag", and tags will always be "\.\.0". This could be problematic if the commit history isn't linear -- need to think about that.