bug#81520: Add pre-receive hook to Savannah to reject LLM-encumbered commits

Eli Zaretskii <[email protected]> Fri, 31 Jul 2026 14:45:52 +0300
Newsgroups gmane.emacs.bugs
Message-ID <[email protected]>
> From: Sean Whitton <[email protected]>
> Cc: [email protected], [email protected]
> Date: Fri, 31 Jul 2026 12:29:14 +0100
> 
> Eli Zaretskii [31/Jul  1:51pm +03] wrote:
> > In any case, my point is that delaying the rejection until push time
> > is much worse than rejecting commits, for the reasons I tried to
> > explain.  If we must have a pre-push hook (which I'm not yet convinced
> > we do), then at least let's have both pre-commit and pre-push hooks.
> 
> I definitely see where you are coming from and understand why you want
> pushes to always succeed.
> 
> I have the opposite view, that I would prefer all our checks are on
> pre-push hooks, and that commits should always succeed.  At some point I
> would like to make it so that a user can choose which one they go on,
> but that's off-topic right now.

My point is that when I have several commits, and then pushing them
all fails because one of them, going back and redoing the one that
caused the fail is a terrible nuisance with Git.  So I want the
rejection happen when I commit, so I could fix it right away.

I don't mind of push fails for a reason whose fix is simple.  For
example, if someone pushed in-between, all I need to do is "git pull"
followed by another push, and that's fine by me.  By contrast, fixing
a commit in the middle of a large number is much harder, especially
when they are not your commits.  Think about merging from a release
branch, or "git am" of someone who submitted a series of several
commits.

What are the problems with rejecting individual commits when they are
done?