release-tag
Automatically create semantic version git tags
What it is and what it does
release-tag is a command-line tool that calculates and creates semantic version git tags automatically. It reads your repository's existing tags, determines the next version according to SemVer precedence rules, and optionally pushes the tag to a remote. You control the increment level (major, minor, or patch), can add pre-release suffixes like 'alpha' or 'rc', and set custom prefixes or build metadata. The tool discourages duplicate tags on the same commit and integrates with pre-commit hooks for automated validation.
It's written in Go but distributed as a Python package, with zero runtime dependencies when installed via pip. The tool runs as a standalone CLI command and is useful in CI/CD pipelines, release workflows, or local development where you want consistent, rule-based version tagging without manual calculation.
Use it for:
- Automate version tagging in CI/CD pipelines during release workflows to ensure consistent SemVer compliance.
- Validate tag ancestry in pre-push hooks to prevent accidental duplicate or out-of-order tags.
- Manage pre-release versions (alpha, beta, rc) with automatic suffix handling and increment logic.
- Generate the next version number for scripted release processes without manual SemVer calculation.
- Integrate with build systems to tag commits with appropriate version identifiers before deployment.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Automatically creates and optionally pushes semantic version git tags following SemVer rules, with support for major/minor/patch increments and pre-release versions.
Yes. The tool solves a real problem—deterministic semantic versioning in git—with low friction, no dependencies, active maintenance, and permissive licensing. It's useful for any project automating releases or enforcing version discipline. The small repository size and recent activity suggest it's stable for its narrow scope.
Install
release-tag on PyPI
pip
pip install release-taguv
uv add release-tagpoetry
poetry add release-tagInstalling release-tag
Before you install
Low install friction with no runtime dependencies; actively maintained with recent commits and steady release cadence since initial release in late 2024.
License in practice
MIT License permits unrestricted use, modification, and distribution with minimal obligations—suitable for any project type.
Quickstart
pip install release-tag
tag --help
tag --patch --push
Requires a git repository with existing tags to calculate the next version; git must be installed and accessible.
Verify before relying
- Whether the tool correctly handles edge cases like jumping from pre-release to stable versions or vice versa.
- Performance and behavior when used in repositories with very large tag histories.
- Compatibility with non-standard git workflows or hosting platforms beyond GitHub.
Package facts
| License | MIT License Copyright (c) 2024 Jamison Lahman Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to… (full text in the JSON record) (permissive) |
| Python support | supports the current Python release (>=3.6) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 156 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 186,163/month — #9,994 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: release_tag-0.5.2-py3-none-any.whl
Keywords: git, git tags, release, releasing, semver, tagging
Tags
More Build Tools packages
Provides reusable utilities for Python…
permissive · top 100 on PyPI
tqdmWraps any iterable to display a real-time…
copyleft · top 100 on PyPI
pippip is the standard installer for Python…
permissive · top 100 on PyPI
hatchlingHatchling is a standards-compliant Python build…
permissive · top 100 on PyPI
grpcio-toolsGenerates Python gRPC service stubs and message…
permissive · top 1,000 on PyPI
pre-commitpre-commit is a framework for installing and…
permissive · top 1,000 on PyPI
autosemverAutomatically generates semantic versions for…
copyleft · top 15,000 on PyPI
bump-my-versionAutomates version number management in projects…
permissive · top 5,000 on PyPI
semverParse, compare, and manipulate semantic version…
permissive · top 1,000 on PyPI
inventree-ipn-generatorAutomatically generates and assigns Internal…
permissive · top 15,000 on PyPI
semver4Parses and manipulates semantic versions with…
permissive · top 15,000 on PyPI
lexidGenerates lexically ordered numerical IDs that…
permissive · top 15,000 on PyPI
semantic-versionParses, validates, and compares semantic…
permissive · top 1,000 on PyPI
tbumptbump automates version bumping in your project…
permissive · top 15,000 on PyPI
vcvervcver generates version strings for Python…
permissive · top 15,000 on PyPI
bumpAutomatically increments version numbers in…
permissive · top 15,000 on PyPI