git-tag-changelog
v1.1.1
Published
Create change logs using git tag annotations
Downloads
11
Maintainers
Readme
git-tag-changelog
Create change logs, saving them in git tag annotations
This module relies on the defacto standard of semver like tags existing within a repository. i.e., v1.0.0, v1.5.0, v2.0.0, etc.
It uses these tags to determine commits, find delta commits between tags, and to generate changelogs based on those delta commits. These changelogs, in markdown format, are then saved to the annotation of a git tag.
You can push these tags up to origin, and if you are using Github, it will automatically show up in the "releases" section of the repo.
Getting Started
Install the module with: npm install git-tag-changelog
Usage
Installing this module exposes a CLI command you can use:
$ cl -h
usage: cl [ACTION] [OPTIONS]
actions: 'list' | 'delta' | 'release' | 'nuclear'
options:
-h, --help Print this help and exit.
-d, --dry Dry run. Does not actually execute command.
-l NUM, --logLevel=NUM Logging level, valid values: 10, 20, 30, 40, 50.
--v1=ARG For 'delta' action. A semver version.
--v2=ARG For 'delta' action. A semver version.
--version=ARG For 'release' and 'rerelease' action. The semver of
the release.
--raw Display raw results instead.
--yesReally Confirmation flag for the 'nuclear' action.
sample usage:
* show all git tags that look like releases (semver):
cl list
* show semantic changes between two tags (order agnostic):
cl delta --v1=4.0.0 --v2=6.0.0
* recreate a changelog for an existing version:
cl rerelease --version=7.7.0
* create a changelog for a new release, and put it in the annotation of a git tag:
cl release --version=8.0.0
* DANGER: loop through all existing tags and recreate changelogs:
cl nuclear --yesReally
Contributing
Ensure that all linting and codestyle tasks are passing. Add unit tests for any new or changed functionality.
To start contributing, install the git prepush hooks:
make githooks
Before committing, lint and test your code using the included Makefile:
make prepush
License
Copyright (c) 2019 Alex Liu
Licensed under the MIT license.