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

Re: Dropping '+' from fetch = +refs/heads/*:refs/remotes/origin/*?

From
Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Date
Sep 6, 2011, 07:39 UTC
Message-ID
<vpqvct69l2e.fsf@bauges.imag.fr>
In-Reply-To
<CAJo=hJtuUe1ajjW9dNU4JzjE+P94a42W7ZvC+iQBQTeGXVvS8Q@mail.gmail.com>
Shawn Pearce <spearce@spearce.org> writes:
> Again, the repository owner would notice on their next push, and
> notify people the repository is not to be trusted.

For simple attack, yes. But if the server is compromised, you can't trust it anymore to error out on non-fast-forward. I don't think it would be very complex to write a modified Git server that would come back to the official history before a push, and re-introduce faulty commits right after. pushers wouldn't notice, and fetchers would get compromised history.

OTOH, non-fast-forward fetches can be reliably detected client-side, and I like being able to think "whatever the server does, I don't care because I'm using Git".

-- 
Matthieu Moy
http://www-verimag.imag.fr/~moy/
Previous: Thomas RastNext: Michael J Gruber
Message 26 of 27 in “Dropping '+' from fetch = +refs/heads/*:refs/remotes/origin/*?”
  1. Junio C HamanoSep 1, 2011
  2. Junio C HamanoSep 1, 2011
  3. Shawn PearceSep 1, 2011
  4. Michael J GruberSep 1, 2011
  5. Matthieu MoySep 1, 2011
  6. Shawn PearceSep 1, 2011
  7. Matthieu MoySep 2, 2011
  8. Jeff KingSep 2, 2011
  9. Johannes SixtSep 2, 2011
  10. Jeff KingSep 2, 2011
  11. Michael J GruberSep 2, 2011
  12. Jeff KingSep 2, 2011
  13. Junio C HamanoSep 2, 2011
  14. Jeff KingSep 2, 2011
  15. Junio C HamanoSep 2, 2011
  16. Shawn PearceSep 5, 2011
  17. Jeff KingSep 5, 2011
  18. Shawn PearceSep 5, 2011
  19. Jeff KingSep 5, 2011
  20. Shawn PearceSep 5, 2011
  21. fetch: bigger forced-update warningsJeff King, Sep 7, 2011
  22. Shawn PearceSep 7, 2011
  23. Junio C HamanoSep 7, 2011
  24. Jeff KingSep 7, 2011
  25. Thomas RastSep 7, 2011
  26. Matthieu MoySep 6, 2011
  27. Michael J GruberSep 6, 2011

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.