API Reference GitHoox v#0.3.0

Copy Markdown View Source

Modules

Git hooks in pure Elixir. Configurable file globs, per-hook options, built-in support for mix format, Credo, ExUnit, and Dialyzer.

Benchmark each hook in the resolved configuration over N runs.

Drop-in replacement for System.cmd/3 that streams the spawned process's combined stdout/stderr to :stdio as each chunk arrives, while still accumulating the full output for the caller.

Load and validate .git_hoox.exs.

Structured errors returned by GitHoox.Config.load/1.

Diagnostic checks for a git_hoox installation.

Shell out to git for file-state queries.

Path glob matching used by hook :files filters.

Behaviour for git_hoox hooks.

Runs mix credo against staged Elixir files.

Runs mix dialyzer --quiet.

Runs mix format against staged Elixir files.

Escape hatch for arbitrary shell commands.

Manage .git/hooks/* shim files.

Reference :telemetry handler that logs GitHoox events via Logger.

Execute hooks for a given stage.

:telemetry event emission for GitHoox.

Mix Tasks

Run the configured hooks for a stage repeatedly and report timing statistics per hook.

Run a set of checks against the current repo's git_hoox setup.

Install git_hoox shims.

Show the resolved hook configuration for the current repo.

Execute git_hoox for a given stage.

Remove only the shims git_hoox installed (identified by marker comment). Restores the most recent .backup.* for each removed shim if present.