Version release for elixir
Project version and changelog managment for elixir. Insparation for functionality is taken from cargo-release package for Rust
Performs release best-practices, including:
- Ensure the git working directory is clean.
- Bump the version in mix.exs
- Create a git tag for this version
- Run mix release (disabled by default)
- Bump version for next development cycle
- Push everything to github
install
Install
Current release: 0.5.3
Add to mix.exs
def deps do
[
...other
{:version_release, "0.5.3", only: :dev, runtime: false}
...other
]
end
usage
Usage
mix version.[level] [--dry-run | -d] [--skip-push | -g] [--skip-publish | -h] [--skip-dev-version | -v] [--skip-merge | -m] [--tag-prefix=<tag_prefix>]
Check reference for more info on levels, other configuration options and CLI commands
Or type mix version
for quick help.
prerequisite
Prerequisite
- Your project should be managed by git.
changelog
Changelog
examples
Examples
Check this repo config or elixir-version-release-tests repo config to have some examples how to configure chanelog updates.
merging
Merging
Sometimes it is useful to keep 2 or more branches up to date with the branch that you are doing version bump from. See reference merging section for more info.
license
License
Licensed under MIT license
ps
PS
If you found this library useful, dont forget to star it (on github) =)