Every git command Claude runs now has hooks, filesystem monitors and prompt helpers turned off.
What's wrong with this entry?
All git invocations go through one wrapper that pins a fixed set of config so a repository cannot make git run its own programs. Hooks are pointed at the null device, protocol.ext.allow is set to never, submodule recursion and signature display are off, core.fsmonitor and core.askPass are neutralized, and GIT_PROXY_COMMAND is blanked. Callers that deliberately want repo hooks can opt back in.
core.hooksPathis forced to/dev/null, or\\.\NULon Windows, and a caller-supplied hooks path is rewritten back to the null device.- An
allowRepoGitHooksoption drops the hooks, askPass and submodule entries for the few call sites that want repo behaviour. - Previously this module only carried the
GIT_TERMINAL_PROMPT/GIT_ASKPASS/GCM_INTERACTIVEenvironment settings and the sshBatchModearguments.
protocol.ext.allow
Strings lifted out of the shipped bundle, so the claim above can be checked against them.