Owen Taylor <otaylor@xxxxxxxxxx> writes: > If I can figure out the rest of it, I'll look at adding a hook on top as > a sweetener :-) Please don't. I seriously suggest you start from, and stick to, nothing but a hook. The pre-push codepath is conceptually very simple --- something needs to inspect a list of <ref, old, new> and say yes or no. But what the users want needs great customizability (e.g. Daniel's sign-off validation example). It's the prime example of codepath that should have a hook and no built-in policy logic. You have to enable the necessary hook in all your repositories, and if that bothers you, then *that* can (and should) be solved as a separate issue by devising a mechanism that can be extended to the other hooks to solve the same issue once and for all. E.g. perhaps in $HOME/.gitconfig, you may want to allow [hook] prePush = $HOME/.githooks/my-pre-push-hook preCommit = $HOME/.githooks/my-pre-commit-hook Lack of a general mechanism to allow users to say "I want this hook to apply to all of my repositories" is not an excuse to add tons of complex code in the codepath. Just give users the mechanism and leave the policy logic to them. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html