GitTools GitVersion GitTools
winget install --id=GitTools.GitVersion -e
Versioning when using Git, solved. GitVersion looks at your git history and works out the Semantic Version of the commit being built.
GitVersion is a tool designed to determine Semantic Versioning (SemVer) based on Git history. It analyzes commit messages and tags to automatically calculate the appropriate version for each build.
Key Features:
- Automatically determines SemVer from Git history, including major, minor, and patch versions.
- Supports multiple platforms, including Windows, Linux, and macOS.
- Integrates seamlessly with CI/CD pipelines such as Azure Pipelines and GitHub Actions.
- Compatible with various build systems like MsBuild for consistent versioning across projects.
- Offers command-line and PowerShell usage for flexibility in scripting and automation.
- Extensible through configuration to meet specific project requirements.
Audience & Benefit: Ideal for developers, DevOps engineers, CI/CD pipeline maintainers, and teams practicing continuous delivery. GitVersion ensures consistent versioning, accurate package tagging, streamlined release processes, and compatibility across different environments. By automating SemVer calculation, it reduces manual errors and enhances efficiency in software development workflows.
Installable via winget, GitVersion provides a robust solution for maintaining clear and predictable versioning practices throughout the development lifecycle.
README
Versioning when using Git, solved. GitVersion looks at your git history and works out the Semantic Version of the commit being built.
Artifact | Stable |
---|---|
GitHub Release | |
GitVersion.Portable | |
GitVersion.Tool | |
GitVersion.MsBuild | |
Homebrew | |
Winget | |
Azure Pipeline Task | |
Github Action | |
Docker |
Compatibility
GitVersion works on Windows, Linux, and Mac.
Quick Links
GitVersion in action!
You are seeing:
- Pull requests being built as pre-release builds
- A branch called
release-1.0.0
producing beta v1 packages
Icon
Tree designed by David Chapman from The Noun Project.