![]()
Gitagger¶
Automate git tags without the headache. Run gitagger and it figures out your tag format, creates the next tag, and pushes it — or sets one up for you if you have none yet.
gitagger # next patch tag, pushed if it can be
gitagger minor # v1.2.3 -> v1.3.0
gitagger major --pre rc # v1.2.3 -> v2.0.0-rc
gitagger --dry-run # peek first, change nothing
Why gitagger?¶
- Follows your convention. Triple (
v1.2.3), double (v1.2), single (v7), date (v2026.10.04), evenmaster-<sha>styles — detected from your history by majority vote. No flags needed for the common case. - Safe by default. Refuses to double-tag HEAD, checks the remote for collisions before pushing (with
doctor), stays graceful offline, never force-pushes unless you say-f. - Hooks included. Run shell commands on
start,success,failure, andfinish— releases, notifications, whatever your flow needs. - One binary, everywhere. Linux, macOS, Windows, Docker, and a GitHub Actions. No runtime, no dependencies.
Start here¶
- New? Install gitagger, then cut your first tag.
- In a hurry? Commands is the full CLI reference.
- Automating? GitHub Action, generated workflows, or Docker.
- Something broken? FAQ & troubleshooting.

License¶
You can check out the licensing for the project here!