Re: git: please refuse push containing commits marked for autosquash by default
From: Jonathan Nieder <hidden>
Date: 2016-06-15 22:49:08
Hi Simon, Simon Richter wrote:
When using the --autosquash feature, quite a number of temporary commits are created that should never be pushed anywhere. It might be a good idea to have an option to refuse to transfer commits whose messages start with "fixup!" or "squash!", both on the server and client side.
At first glance this looks very useful, as an optional hook rather than on by default[1]. It sounds like a good use for hooks. Receiving side: an update hook should do the trick. See the githooks manual page, or /usr/share/doc/git/contrib/hooks/update-paranoid for an example. Sending side: there is no pre-push hook yet, but there was some work towards that about a year and a half ago[2]. Maybe someone interested could revive the topic or figure out what remains to be done. Jonathan [1] Sometimes I send works in progress from one machine to another; it would be quite unnerving if this resulted in some puzzling message about how I forgot to rebase first. [2] http://thread.gmane.org/gmane.comp.version-control.git/92900 http://thread.gmane.org/gmane.comp.version-control.git/128426/focus=128433