git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Disallow amending published commits?

From
PHPeter Harris <git@peter.is-a-geek.org>
Date
Mar 21, 2009, 18:46 UTC
Message-ID
<eaa105840903211146s4ff398e3qa8b570a8d29a83f4@mail.gmail.com>
In-Reply-To
<885649360903211056u38ff6cabxbe1a17d57faaa0c4@mail.gmail.com>
On Sat, Mar 21, 2009 at 1:56 PM, James Pickens wrote:
Show 5 quoted lines
> I wanted to have a pre-commit hook that would prevent users from
> amending a commit that had already been published, but I couldn't
> find any way in the pre-commit hook to figure out if --amend was
> used.  Is there a way to do that?  Or any better way to disallow
> amending published commits?

An amended commit will have a new SHA1, and therefore git will treat it as an entirely different commit. Trying to push an amended history is 'non fast forward' in git terminology, since it involves a rewind of existing history.

Set receive.denyNonFastForwards if you don't want people to be able to amend (or otherwise rewind) published history.

Peter Harris
Previous: James PickensNext: James Pickens
Message 2 of 9 in “Disallow amending published commits?”
  1. James PickensMar 21, 2009
  2. Peter HarrisMar 21, 2009
  3. James PickensMar 21, 2009
  4. Peter HarrisMar 22, 2009
  5. Peter HarrisMar 22, 2009
  6. James PickensMar 22, 2009
  7. Peter HarrisMar 22, 2009
  8. Nicolas SebrechtMar 22, 2009
  9. Jeff KingMar 22, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.