Surveyor.BuildVersioning
0.7.2
dotnet add package Surveyor.BuildVersioning --version 0.7.2
NuGet\Install-Package Surveyor.BuildVersioning -Version 0.7.2
<PackageReference Include="Surveyor.BuildVersioning" Version="0.7.2" />
<PackageVersion Include="Surveyor.BuildVersioning" Version="0.7.2" />
<PackageReference Include="Surveyor.BuildVersioning" />
paket add Surveyor.BuildVersioning --version 0.7.2
#r "nuget: Surveyor.BuildVersioning, 0.7.2"
#:package Surveyor.BuildVersioning@0.7.2
#addin nuget:?package=Surveyor.BuildVersioning&version=0.7.2
#tool nuget:?package=Surveyor.BuildVersioning&version=0.7.2
About
An MSBuild task to automatically apply assembly and package version numbers by analyzing conventional commit messages and determining whether files have changed since the last version published to a NuGet feed.
Each project, assembly, or package in a solution is versioned independently so new versions are only released if the assembly has changed, as opposed to publishing every package in the repository.
Key Features
- Each project, assembly, or package in a solution is versioned independently so new versions are only released if the assembly has actually changed, as opposed to
- Analyses commit messages formatted according to the Conventional Commits specification to determine whether a version bump should be a patch, minor, or major release.
- Version numbers follow the Semantic Versioning 2 specification.
- Version numbers are recorded as git tags ensuring full compatibility with your existing workflow.
- Per branch versioning gives the flexibility to simultaneously develop
v2.0.0while providing patches for yourv1branch. - Pre-release versioning is fully supported via
alpha,beta, andrcbranches.
How to Use
Add the Surveyor.BuildVersioning NuGet package to your project:
<PackageReference Include="Surveyor.BuildVersioning" Version="0.4.0" PrivateAssets="All" Condition="'$(CI)' == 'true'" />
Optionally, configure it to only run in your CI build environment, or for Release builds:
<PackageReference Include="Surveyor.BuildVersioning" Version="0.4.0" PrivateAssets="All" Condition="'$(CI)' == 'true'" />
<PackageReference Include="Surveyor.BuildVersioning" Version="0.4.0" PrivateAssets="All" Condition="'$(Configuration)' == 'Release'" />
How it Works
The versioning logic is executed by VersioningTask which is implemented as a custom MSBuild task. The task itself calls the ProjectVersioningActivity.
When the Surveyor.BuildVersioning package is included as a PackageReference the MSBuild process automatically calls Surveyor.BuildVersioning.props which adds the task, and Surveyor.BuildVersioning.targets which executes the task and assigns the resulting properties.
Learn more about Target Frameworks and .NET Standard.
This package has no dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.7.2 | 542 | 2/22/2025 |