From: Jonathan Nieder Date: Fri, 16 Jul 2010 19:04:32 GMT Subject: Re: git: please refuse push containing commits marked for autosquash by default Message-ID: <20100716190432.GA16371@burratino> In-Reply-To: <20100716123715.16356.65888.reportbug@richter> 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