mirror of
https://github.com/Luzifer/git-changerelease.git
synced 2024-12-20 11:01:16 +00:00
git-subcommand to write the changelog in a consistent format and tag it using semantic versioning
assets | ||
integration | ||
vendor | ||
.gitignore | ||
.repo-runner.yaml | ||
assets.go | ||
config.go | ||
git.go | ||
Gopkg.lock | ||
Gopkg.toml | ||
History.md | ||
LICENSE | ||
main.go | ||
Makefile | ||
README.md | ||
semver.go | ||
semver_test.go |
Luzifer / git-changerelease
git-changerelease
is a git-subcommand to write the changelog in a consistent format and tag it using semantic versioning. You can see the version it writes in the History.md file in this repository.
Features
- Specify regular expressions to match the commit subject against for automated detection of major / minor / patch releases
- Automatically write Changelog from commits
- Start editor to change the Changelog (and the version) before tagging
Usage
- Generate a configuration file using
git changerelease --create-config
- Edit your matchers in the configuration file just created
- Commit and release:
# git init
Initialized empty Git repository in /tmp/test/.git/
# git commit --allow-empty -m 'add an empty commit'
[master (root-commit) 0cc02e6] add an empty commit
# git-changerelease
# git describe --tags HEAD
v0.1.0
# git commit --allow-empty -m 'fix another empty commit'
[master 69d6f0e] fix another empty commit
# git-changerelease
# git describe --tags HEAD
v0.1.1