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

  -h, --help         show this help message and exit
  -v, --verbose      Verbosity (-v for INFO, -vv for DEBUG)
  -b, --by BY        Increment by a specific number
  -p, --patch        Increment patch version (x.x.PATCH)
  -m, --minor        Increment minor version (x.MINOR.0)
  -M, --major        Increment major version (MAJOR.0.0)
  -l, --label LABEL  Add label to the version (e.g., -l rc1 creates 1.0.0-rc1)
  -a, --msg MSG      Annotated tags message
  -u, --push         Push the new tag to remote repository
  -U, --pushall      Push all local tags to remote repository
  -n, --no-fetch     Do not fetch tags from remote before operation

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

Using Homebrew

brew install mateuszmikrut/tap/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.2.tar.gz (8.4 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.2-py3-none-any.whl (6.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: semtag-0.2.2.tar.gz
  • Upload date:
  • Size: 8.4 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.2.tar.gz
Algorithm Hash digest
SHA256 12371bd56093c5e762c745638fec6bc5213c5b988e7380b27a7c161829575e11
MD5 1beb6c475b621bb1daab3804d63b7fd1
BLAKE2b-256 1950ceef9a4972faff6d65c24462067c9dfd0fc5bec90b7c9fd3d1b7e57a16ce

See more details on using hashes here.

Provenance

The following attestation bundles were made for semtag-0.2.2.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.2-py3-none-any.whl.

File metadata

  • Download URL: semtag-0.2.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 dafee7037ff3c1be205cd9448776cdb6934c39bc1b73435cfe13c46ae487f7d3
MD5 c9e1a154628738d746cd13cdeb3b7a74
BLAKE2b-256 4123af7a9ee9e4ce78e561f3ff370efc983d361a2880a5e684d8c96566b7c5ce

See more details on using hashes here.

Provenance

The following attestation bundles were made for semtag-0.2.2-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