https://github.com/semankit/semankit
Automated semantic versioning
https://github.com/semankit/semankit
git golang karmic semankit semver semver-tag
Last synced: about 2 months ago
JSON representation
Automated semantic versioning
- Host: GitHub
- URL: https://github.com/semankit/semankit
- Owner: semankit
- License: mit
- Created: 2023-02-25T22:45:33.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-05-17T17:16:51.000Z (about 3 years ago)
- Last Synced: 2025-11-01T01:02:14.226Z (8 months ago)
- Topics: git, golang, karmic, semankit, semver, semver-tag
- Language: Go
- Homepage:
- Size: 21.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## What is Semankit?
Semankit is an **CI tool** that manages versioning by determining the subsequent version
through the last tag and incrementing it based on the commit from the latest push.
## Why Semankit ?
Many developers mentally determine the version of their project, which causes inconsistencies.
Others use local tools to version their code before pushing it, which wastes time.
**Semankit aims to save time, obtain consistent versions and enforce conventions over commit message**
## How to bump versions ?
To update versions, Semankit relies on the format of commit messages which is
the "[Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/)" convention and
only commits with messages **containing "feat" and "fix"** increase the versions.
The following table shows the version increase based on the commit message:
| Commit message | Is a breaking change ? | Version increase |
|---------------------------|------------------------|------------------|
| fix: issue one | No | Patch |
| fix: issue two | Yes | Minor |
| fix(signup): issue one | No | Patch |
| fix(signup): issue two | Yes | Minor |
| feat: feature one | No | Minor |
| feat(signup): feature one | Yes | Major |