Hooks drifted between machines because they lived outside the repository.
Conversation
Turn 1 — User
My pre-push hook is different on each machine.
Turn 2 — Assistant
Moved the hooks into a tracked directory and pointed the hooks path at it, so they are versioned like anything else and updating is a pull.
The setup script wires the path, and the hook itself checks only the files in the push rather than the whole tree, which keeps it fast enough that nobody is tempted to skip it.
Turn 3 — User
What if someone needs to bypass it?
Turn 4 — Assistant
The standard no-verify flag still works. The point is that skipping is a deliberate act rather than the default state.
Subjects
- [[Shell]]
- [[Git]]
- [[Configuration]]