{"id":28093340,"url":"https://github.com/tranquility2/semvergit","last_synced_at":"2025-07-19T04:32:21.232Z","repository":{"id":215337619,"uuid":"736321100","full_name":"Tranquility2/semvergit","owner":"Tranquility2","description":"Manage your project's version numbers","archived":false,"fork":false,"pushed_at":"2025-07-11T17:42:15.000Z","size":157,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-11T19:26:13.118Z","etag":null,"topics":["cli","git","semver","versioning"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Tranquility2.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-12-27T15:32:38.000Z","updated_at":"2025-07-11T17:42:19.000Z","dependencies_parsed_at":"2024-02-02T16:44:32.578Z","dependency_job_id":"8009b9d2-ab41-4fc5-9598-bc63703cee27","html_url":"https://github.com/Tranquility2/semvergit","commit_stats":null,"previous_names":["tranquility2/semvergit"],"tags_count":24,"template":false,"template_full_name":null,"purl":"pkg:github/Tranquility2/semvergit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tranquility2%2Fsemvergit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tranquility2%2Fsemvergit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tranquility2%2Fsemvergit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tranquility2%2Fsemvergit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Tranquility2","download_url":"https://codeload.github.com/Tranquility2/semvergit/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tranquility2%2Fsemvergit/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265888899,"owners_count":23844527,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","git","semver","versioning"],"created_at":"2025-05-13T14:01:09.496Z","updated_at":"2025-07-19T04:32:21.224Z","avatar_url":"https://github.com/Tranquility2.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"|||\n|-|-|\n| CI/CD   | [![Pytest](https://github.com/Tranquility2/semvergit/actions/workflows/pytest.yml/badge.svg)](https://github.com/Tranquility2/semvergit/actions/workflows/pytest.yml) [![Publish](https://github.com/Tranquility2/semvergit/actions/workflows/publish.yml/badge.svg)](https://github.com/Tranquility2/semvergit/actions/workflows/publish.yml) ![GitHub Latest Release)](https://img.shields.io/github/v/release/Tranquility2/semvergit?logo=github) [![Coverage Status](https://coveralls.io/repos/github/Tranquility2/semvergit/badge.svg)](https://coveralls.io/github/Tranquility2/semvergit) [![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit\u0026logoColor=white)](https://github.com/pre-commit/pre-commit)|\n| Package | [![PyPI - Version](https://img.shields.io/pypi/v/semvergit.svg?logo=pypi\u0026label=PyPI\u0026logoColor=gold)](https://pypi.org/project/semvergit/) [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/semvergit.svg?logo=python\u0026label=Python\u0026logoColor=gold)](https://pypi.org/project/semvergit/) [![Downloads](https://img.shields.io/pypi/dm/semvergit.svg?logo=python\u0026label=PyPI\u0026logoColor=gold)](https://pepy.tech/project/semvergit) |\n| Meta    | [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) [![security: bandit](https://img.shields.io/badge/security-bandit-yellow.svg)](https://github.com/PyCQA/bandit) [![Imports: isort](https://img.shields.io/badge/%20imports-isort-%231674b1?style=flat\u0026labelColor=ef8336)](https://pycqa.github.io/isort/) [![linting: pylint](https://img.shields.io/badge/linting-pylint-yellowgreen)](https://github.com/pylint-dev/pylint) [![Checked with mypy](http://www.mypy-lang.org/static/mypy_badge.svg)](http://mypy-lang.org/) [![License - MIT](https://img.shields.io/badge/license-MIT-9400d3.svg)](https://spdx.org/licenses/) |\n\n# semvergit\n![semvergit](https://raw.githubusercontent.com/Tranquility2/semvergit/master/assets/semvergit-255.png)\n\nsemvergit is a CLI tool to manage your project's version numbers.\nIt uses [Semantic Versioning](https://semver.org/) to bump the version number.\nThe supported bump types are:\n\n- `major`\n- `minor`\n- `patch`\n- `prerelease`\n\n## Internal Workflow\n___What's actully happening when you run this tool___\n1. Use the latest git tag to determine the current version number.\n2. Bump the version number\n3. Create a new git tag\n4. Push the tag to the remote\n\n## Why?\nI created this tool to help me manage my project's version numbers.\nI wanted a simple tool that I could use in my CI/CD pipeline to bump the version number and tag the commit.\n\n## Features\n❇️ Bump the version number and update the git tag in one command\n❇️ Dry run mode\n❇️ Verbose mode\n❇️ Custom commit message*\n❇️ Auto commit message*\n🆕 Version 0.4+ introduces the ability to automatically update the version number in a file*\n\n\u003csup\u003e*Please see the [limitations](#Limitations) section below\u003c/sup\u003e\n\n## How to use\nSimple install using\n``pip install semvergit``\n\nThen you can use it in your project as simply as:\n``semvergit -t patch -v``\n(to bump the patch version)\nThis will:\n\n1. create the relvant tag (in this case a patch bump 0.0.x -\u003e 0.0.x+1)\n2. push it to the remote\n\nPlease checkout ``semvergit --help`` for more info.\n\n```shell\nUsage: semvergit [OPTIONS] COMMAND [ARGS]...\n\n  CLI for semvergit.\n\nOptions:\n  --version                Show the version and exit.\n  -d, --dry_run            Dry run\n  -v, --verbose            Verbose level  [0\u003c=x\u003c=2]\n  -t, --bump_type TEXT     Bump Type ['major', 'minor', 'patch', 'prerelease']\n  -m, --message TEXT       Commit message\n  -am, --auto_message      Auto commit message\n  -f, --version_file FILE  Version file\n  --help                   Show this message and exit.\n```\n\n## Limitations\nPlease keep in mind that when using features like `commit message` / `auto commit message` and `version file` the tool will try and commit the changes to the git repo.\n\nEven though this is quite handy, it should be used mannually as it **cannot be used directly in a CI/CD pipeline directed at `master` or `main` branches** as it will likly fail due to the commit not being allowed without a PR.\n\n💡 Only git tags can be pushed to the remote without a PR *(and this is the main use case for this tool)*.\n\n## Development\n\nPlease see [CONTRIBUTING.md](CONTRIBUTING.md)\n\n## License\n\nThis project is published under the MIT license.\n\nIf you do find it useful, please consider contributing your changes back upstream.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftranquility2%2Fsemvergit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftranquility2%2Fsemvergit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftranquility2%2Fsemvergit/lists"}