flowtool-githooks-demo¶
This package contains some example git hooks.
The hooks are made runnable via console_scripts
entry points.
The hooks are also recognized by the flowtool-githooks
management via entry points.
That just means for a user of this tool, that the hooks will show up in the
ft githooks-scripts
menu automatically, and can also be run via their name from
the command line.
Setting things up¶
$ pip install flowtool-githooks-demo
Then you can install the hook runner and set up the demo hook by using these commands:
$ flowtool githooks-install
$ flowtool githooks-scripts --hook pre-commit --add _flowtool_githooks.demo
$ flowtool githooks-scripts --hook commit-msg --add _flowtool_githooks.demo
$ flowtool githooks-scripts --hook pre-push --add _flowtool_githooks.demo
To configure the hooks interactively:
$ flowtool githooks-scripts --help
$ flowtool githooks-scripts
To unistall the hooks use:
$ flowtool githooks-scripts --hook pre-commit --remove _flowtool_githooks.demo
$ flowtool githooks-wipe
_flowtool_githooks.demo¶
A git hook to showcase the possibilities of git hooks. It prints its (command line) arguments and various information that may or may not be interesting to someone developing a hook for his own purposes.
As one main feature, it reads it’s standard input non-blocking and outputs it if there is anything, since only some hooks get additional information passed in via stdin.
_flowtool_githooks.demo_fail¶
A git hook that will always fail.
Good to test what a non-zero exit status will do for certain hooks.
_flowtool_githooks.shellcheck¶
A step towards a collection of git hooks, that wrap code checkers. This one wraps shellcheck, a shell script syntax, style and security checker.
_flowtool_githooks.yamllint¶
One more step towards a collection of useful git hooks. This one wraps yamllint, a yaml linter.
_flowtool_githooks.markdownlint¶
One more step towards a collection of useful git hooks. This one wraps pymarkdownlint, a markdown linter.