Skip to main content

A tool for managing semantic version tags in git repositories

Project description

Semantic Version GIT Tagger

A pretty trivial python script to easily manage git tags with semantic versioning (semver.org)

Usage

semtag [options]

Options

  • -p, --patch - Increment patch version (x.x.PATCH)
  • -m, --minor - Increment minor version (x.MINOR.0)
  • -M, --major - Increment major version (MAJOR.0.0)
  • -b, --by - Increment by a specific number (default: 1)
  • -l, --label - Add label to the version (e.g., -l rc1 creates 1.0.0-rc1)
  • -u, --push - Push the new tag to remote repository
  • -U, --pushall - Push all local tags to remote repository
  • -n, --nofetch - Do not fetch tags from remote prior creating new one
  • -v, --verbose - Increase verbosity (use -v or -vv for more detail (INFO,DEBUG))

Examples

# Increment minor version (1.0.0 -> 1.1.0)
semtag -m

# Increment major version (1.0.0 -> 2.0.0)
semtag -M

# Increment patch version (1.0.0 -> 1.0.5)
semtag -p -b 5

# Increment patch and add label (1.0.0 -> 1.0.1-rc1), don't fetch and push new tag
semtag -n -u -p -l rc1

Installation

Using pip (preferred)

pip install semtag

From git

git clone https://github.com/mateuszmikrut/semtag.git
cd semtag
python -m venv venv
source ./venv/bin/activate
pip install -r requirements.txt
python ./semtag.py

Supported Version Formats

The script supports semantic versioning with the following formats:

  • v1.0.0 (with 'v' prefix)
  • 1.0.0 (without prefix)
  • 1.0.0-rc1 (with prerelease label)

When incrementing versions, prerelease labels are automatically removed.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

semtag-0.2.0.tar.gz (6.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

semtag-0.2.0-py3-none-any.whl (6.4 kB view details)

Uploaded Python 3

File details

Details for the file semtag-0.2.0.tar.gz.

File metadata

  • Download URL: semtag-0.2.0.tar.gz
  • Upload date:
  • Size: 6.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for semtag-0.2.0.tar.gz
Algorithm Hash digest
SHA256 7868508707938e9c01bec7e31a7a0217f064f77df03f018f75959099215fae39
MD5 3165267d2cc0731ab55bd068d43ce713
BLAKE2b-256 2a56b2c6001e3aeef5c1a7a598d49f1d35dae72fc9d35eda505fd4fa9228ea79

See more details on using hashes here.

Provenance

The following attestation bundles were made for semtag-0.2.0.tar.gz:

Publisher: publish.yml on mateuszmikrut/semtag

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file semtag-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: semtag-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 6.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for semtag-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 64b7bda1f6a8a383aee4e760048a684d1bddba32cc340bc50e760f1d5c60245d
MD5 f09c2ea3829f8155e0bca5ccd119817b
BLAKE2b-256 dfffa159d9fde5cebefc527b23b9e3c5941610731656df6b04e6faff87fd9dc1

See more details on using hashes here.

Provenance

The following attestation bundles were made for semtag-0.2.0-py3-none-any.whl:

Publisher: publish.yml on mateuszmikrut/semtag

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page