This tool is written in rust to be light weight and portable cli for the management and generation of chagelogs for software realease. The idea is to create a way for developers to maintain an up to date changelog with minimal overhead and great integration into CI/CD (agnostic tool that can be used in any CI/CD solution). The idea is for developers to create change files for every story/issue/task/bug/feature (depending of planning tooling the name differs). This prevents uglier solutions of messy git conflict when all developers change a single changelog file. Allows for nice auto generation of changelog file based on predefined template
run cmd: cargo install changelog-rust
wget -O - https://raw.githubusercontent.com/adam-bratin/changelog-rust/main/install/unix.sh | sh
or
curl -s http://example.com/script.sh | sh
powershell -Command {iwr -useb https://raw.githubusercontent.com/adam-bratin/changelog-rust/main/install/windows.ps1 | iex}
Go to the downloads page for the latest release at: https://github.com/adam-bratin/changelog-rs/releases/latest
Download correct version of OS.
NOTE You may neeed to give the executable execute permissions
```bash changelog
USAGE:
changelog-rust [OPTIONS]
FLAGS: -h, --help Prints help information -V, --version Prints version information
OPTIONS:
-c
SUBCOMMANDS: generate generate chagefile for PR help Prints this message or the help of the given subcommand(s) init initialize repo with setup for changelog cli merge merges all the change files into an changelog from template ```
The init command is used to setup a repo to use the cli tool
```bash
USAGE:
changelog-rust init [OPTIONS] --appName
FLAGS: -h, --help Prints help information -V, --version Prints version information
OPTIONS:
-n, --appName The generate command is used to create a change file for json spec see Changefile schmea If the output directory does not exist it is automatically create for you. It is possible to create a change file non interactive by passing the -t and -d flags see below for more info. ```bash
USAGE:
changelog-rust generate [OPTIONS] FLAGS:
-h, --help Prints help information
-V, --version Prints version information OPTIONS:
-d The merge command is uesed to generate a changelog by parsing all the change files and applying them to the teplate file. For more info on how to customize the teplate file see Template File ```bash
USAGE:
changelog-rust merge [FLAGS] [OPTIONS] FLAGS:
-d, --delete whether to delete change files after changelog is created
-h, --help Prints help information
-V, --version Prints version information OPTIONS:
-i path to input change files [default: ./changes/]
-o Generate
Merge