This library uses Nerdbank.GitVersioning for generating stable and reproducible version numbers.
The base version is manually maintained in the version config. Every build calculates its final version number based on the base version and the number of changes that occured since the last change to the version config.
The base version represents the MAJOR and MINOR parts of SemVer. If a PR contains breaking changes or new features the base version has to be changed accordingly. If a PR solely contains minor changes (bug fixes, code improvements) nothing needs to be done as the PATCH number will automatically increment with each commit.
master
contains the latest sources - this is where we develop.release
contains the sources for the latest version onnuget.org
- this is where we deploy from.- All versions on
nuget.org
have a matching GitHub release/tag
- Create a PR from
master
torelease
and wait for CI to finish. - Inspect CI run (test results, version number)
- Merge PR and wait for deployment
- Inspect newly created package versions on NuGet.org and newly created GitHub release