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

Making GitGitGadget conversion lossless

From
Konstantin Ryabitsev <konstantin@linuxfoundation.org>
Date
Feb 26, 2020, 20:09 UTC
Message-ID
<20200226200929.z4aej74ohbkgcdza@chatter.i7.local>
Hi, all:

GitGitGadget is great, and I'm looking forward to adapting it to Linux Kernel's needs. There is one area where I think the situation can be further improved, and that's if the process of converting a pull request into a patch series were completely 100% reversible. As of right now, the following data is permanently lost from commits as they are converted into patches:

- parent/tree hashes
- author/committer information
- cryptographic attestation (gpgsig)

There is an existing body of work done by Vegard Nossum [1] that makes it possible to fully reconstruct a git commit from an email message, and I hope that it can make its way into official upstream. If that were to happen, it would mean that converting from a pull request into a patch series would become a lossless operation and tools like GitGitGadget would be able to preserve full cryptographic attestation of commits.

Vegard, if there is interest in getting this work into upstream, are you in a position to continue your work on it?

Best regards, -K

[1]: https://lore.kernel.org/git/20191022114518.32055-1-vegard.nossum@oracle.com/#t
Next: Junio C Hamano
Message 1 of 5 in “Making GitGitGadget conversion lossless”
  1. Konstantin RyabitsevFeb 26, 2020
  2. Junio C HamanoFeb 26, 2020
  3. Vegard NossumFeb 26, 2020
  4. Konstantin RyabitsevFeb 26, 2020
  5. Junio C HamanoFeb 26, 2020

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.