pre-push rejects any push that would update refs/heads/main, however the
command is spelled; pre-commit and pre-merge-commit refuse commits while
main is checked out. npm install enables them via core.hooksPath. The
README documents the three layers of protection for main.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Project settings can't re-open a path denied by another settings source,
so this lives in user settings instead.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Run git ls-remote unsandboxed so SSH works, and ask before each use like
the other network git commands.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Enable the Bash sandbox with writes limited to the project, block reads
of credential and personal folders, and protect the settings files from
edits. git commit/push/fetch/pull run unsandboxed so GPG and SSH work;
network git commands always ask first.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>