Skip to content

Easily generate releases using git-cliff and github actions

License

Notifications You must be signed in to change notification settings

iwishiwasaneagle/git-release

Repository files navigation

git-release

pre-commit.ci status CI License OS: Linux PyPI - Downloads PyPI codecov

Easily generate tag-based releases. Uses the powerful git-cliff to generate changelogs. These can then be leveraged via github actions

Installation

# Install dependencies
cargo install git-cliff

# Install git-release
pip install git-release

Usage

usage: git-release [-h] [--comment COMMENT] [--remote REMOTE] [-v] [--semver SEMVER] [--major | --minor | --patch | --no-inc]

optional arguments:
  -h, --help            show this help message and exit
  --comment COMMENT, -c COMMENT
                        A comment to describe the release. Synonymous to a tag message. Defaults to the generated changelog.
  --remote REMOTE, -r REMOTE
                        The repository remote (defaults to 'origin')
  -v, --verbose         NOT IMPLEMENTED YET

Semantic Version:
  Options to manipulate the version. If --semver is not passed, git-release uses the most recent tag.

  --semver SEMVER       Custom semantic version. Use --no-inc to use as is.
  --major, -M           Increment the major version by 1 (resets minor and patch)
  --minor, -m           Increment the minor version by 1 (resets patch)
  --patch, -P           Increment the patch version by 1 (default behaviour)
  --no-inc              Don't increment anything

Contributing

Ensure that pre-commit is installed and working. Otherwise the pre-commit CI will most likely fail.

# Install and setup pre-commit
pip install pre-commit
pre-commit install --install-hooks

Repos that have used git-release