mix changex.diff (changex v0.3.0)

Display a changelog in the terminal.

The changelog will be generated between two commits. To generate an automated changelog, commits must be in the format:

type(scope): description

Where type is one of the following:

TypeDescription
feata new feature
fixa bug fix
docsa documentation change
stylechanging the code formatting/whitespace
refactorrefactoring existing code
perfcode that is designed to improve performance
testadding a test
revertremoving a previous commit
choreanything else - version bump, etc.

scope should be the subject of your commit, i.e. IO.Ansi or Mix.Task

description is a short description of your commit.

A --dir option can be given to show a changelog from a different repository.

A --github option can be given link to a GitHub repository when the commit hash is displayed. This is in the format username/repo.

A --format option can be given to alter the output format of the changelog. Valid options are terminal and markdown and 'elixir'. A custom formatter may be specified by passing through a module that response to a format function. e.g.

mix changex.diff --format Custom.Formatter

An optional start and last commit can be passed through. By default it will use the root commit as first and "HEAD" as last

examples

Examples

Show the changes since the last tag. If no tag is available use the root commit.

mix changex.diff

Show the changes between the v0.0.1 tag and HEAD

mix changex.diff v0.0.1

Show the changes between the v0.0.1 tag and commit ade73f

mix changex.diff v0.0.1 ade73f

Link to this section Summary

Functions

Callback implementation for Mix.Task.run/1.

Link to this section Functions

Callback implementation for Mix.Task.run/1.