| Crates.io | tagver |
| lib.rs | tagver |
| version | 0.1.1 |
| created_at | 2025-12-09 01:22:28.402468+00 |
| updated_at | 2025-12-09 04:05:22.701403+00 |
| description | Core library for minimalistic versioning using Git tags |
| homepage | |
| repository | https://github.com/scratchingmonkey/tagver |
| max_upload_size | |
| id | 1974666 |
| size | 132,388 |
A Rust implementation of the MinVer CLI - minimalistic versioning using Git tags.
This project ports the excellent MinVer CLI .NET tool to Rust and incorporates the gitoxide crate, providing a fast, dependency-free CLI tool and library for calculating version numbers from Git repository tags.
cargo install tagver-cli
Download platform-specific archives from GitHub Releases:
tagver-linux-x86_64.tar.gz (Linux x86_64)tagver-macos-arm64.tar.gz (macOS Apple Silicon)tagver-windows-x86_64.zip (Windows x86_64)git clone https://github.com/scratchingmonkey/tagver
cd tagver
cargo install --path crates/cli
# Calculate version for current repository
tagver
# With custom tag prefix
tagver --tag-prefix v
# Ignore height (use exact tag version)
tagver --ignore-height
# Print all command-line options
tagver --help
$ git tag 1.2.3
$ tagver
1.2.3
All options can also be set via environment variables:
TAGVER_TAGPREFIXTAGVER_AUTOINCREMENTTAGVER_DEFAULTPRERELEASEIDENTIFIERSTAGVER_MINIMUMMAJORMINORTAGVER_IGNOREHEIGHTTAGVER_BUILDMETADATATAGVER_VERBOSITYTagVer follows the same algorithm as the original MinVer:
| Git state | Result |
|---|---|
On tag 1.0.0 |
1.0.0 |
5 commits after 1.0.0 |
1.0.1-alpha.0.5 |
On tag 1.0.0-beta.1 |
1.0.0-beta.1 |
3 commits after 1.0.0-beta.1 |
1.0.0-beta.1.3 |
| No tags | 0.0.0-alpha.0 |
| 2 commits from root | 0.0.0-alpha.0.2 |
| Feature | MinVer (.NET) | TagVer (Rust) |
|---|---|---|
| Language | C# | Rust |
| Distribution | NuGet package | Static binary |
| Startup time | ~200ms | <10ms |
| Dependencies | .NET SDK | None |
| Cross-platform | .NET supported | All Rust targets |
| Environment variables | ✅ | ✅ |
| CLI interface | ✅ | ✅ |
| Library usage | ✅ | ✅ |
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.