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.
Runs mix test.
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.