Skip to content

Git Hooks and Tools based on Conventional Changelog Generator

License

Notifications You must be signed in to change notification settings

shanewilson/cgtools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Conventional Git Tools

Git Hooks and Changelog Generator based on Conventional Changelog

Build Status

Why

... Standardize git commits to run tools against later ...

What

... A single file that can be added to your project that will install git hooks to standardize git commits and generate change logs automagically ...

Installation

To install cgtools simply drop the bin into your project directory and run ./cgtools install -v.

> chmod +x cgtools          # Make cgtools executable
> ./cgtools install -v      # Install cgtools
Checking dependencies...
OK
Generating Git Hooks...
OK

Tab completion in bash and zsh

cgtools can generate tab completion for bash and zsh with the flag -b or --bash-completion. You can test it out by sourcing the file: source cgtools-completion.sh.

> ./cgtools install -b -v         # Install cgtools with bash completion
Checking dependencies...
OK
Generating Git Hooks...
OK
Generating Bash Completion...
OK
$ source cgtools-completion.sh
$ ./cgtools <tab>
--help     --verbose  --version  -h         -v         install    logs       validate

bash instructions

zsh instructions

Note: If you use zsh you might need to add the following to your .zshrc:

autoload bashcompinit
bashcompinit

Source

To build from source you will need to install Haskell

$ git clone https://github.com/shanewilson/cgtools.git
$ cd cgtools
$ cabal sandbox init
$ cabal install --enable-tests --enable-benchmarks --force-reinstalls
$ .cabal-sandbox/bin/cgtools --help

Git Hooks

Prepare Commit Message

Talk about this next time

Change Log

TODO

About

Git Hooks and Tools based on Conventional Changelog Generator

Resources

License

Stars

Watchers

Forks

Packages

No packages published