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

Re: [RFC] introducing git replay

From
Edmundo Carmona Antoranz <eantoranz@gmail.com>
Date
Apr 18, 2022, 07:04 UTC
Message-ID
<CAOc6etZmLusw4fxTx=9Gm6W2L4cSdOKQP_eX+23HGpdd=r1omA@mail.gmail.com>
In-Reply-To
<CANiSa6g7ShxTXNEyJEyb==qCYNAMrNf30VkDPaydvOo0Bm+Onw@mail.gmail.com>

On Sun, Apr 17, 2022 at 7:23 PM Martin von Zweigbergk <martinvonz@gmail.com> wrote:

>
Show 16 quoted lines
>
> My (Git-compatible) VCS [1] is very relevant to this thread. It always
> treats the contents of a merge commit as the diff compared to the
> re-merge (auto-merged) parents. That applies to diffs (like
> --remerge-diff) and rebases (what Elijah suggested in that link above)
> . An important part of the solution I went with is to store
> information about conflicts in the commits. Note that it's a more
> high-level representation of the conflicts - not conflict *markers* -
> that's stored in the commits [2]. Adding a new kind of object type is
> obviously a huge step to take for Git, but perhaps you can consider it
> as long as these objects are not exchanged. Also, as you have probably
> noticed with your `git replay` command, this kind of rebasing without
> touching the working copy or trees can get pretty fast. I didn't see
> any performance numbers in your original message, but you are probably
> able to rebase >1k commits per second in the git.git repo [3].
>

Thanks for all your input (I mean, everybody who has jumped into the conversation). In my last experiment to get this into rebase (and still without moving the working tree), the 900+ commits that make up the segment v2.35.0..v2.36.0-rc1 are converted in some 143 ms in my computer, which is an aging dinosaur.

Previous: Martin von ZweigbergkNext: Sergey Organov
Message 11 of 25 in “[RFC] introducing git replay”
  1. Edmundo Carmona AntoranzApr 13, 2022
  2. Junio C HamanoApr 13, 2022
  3. Edmundo Carmona AntoranzApr 15, 2022
  4. Junio C HamanoApr 15, 2022
  5. Edmundo Carmona AntoranzApr 16, 2022
  6. Junio C HamanoApr 16, 2022
  7. Edmundo Carmona AntoranzApr 16, 2022
  8. Elijah NewrenApr 17, 2022
  9. Edmundo Carmona AntoranzApr 17, 2022
  10. Martin von ZweigbergkApr 17, 2022
  11. Edmundo Carmona AntoranzApr 18, 2022
  12. Sergey OrganovApr 18, 2022
  13. Elijah NewrenApr 18, 2022
  14. Sergey OrganovApr 18, 2022
  15. Tao KlerksApr 20, 2022
  16. Elijah NewrenApr 21, 2022
  17. rsbecker@nexbridge.comApr 13, 2022
  18. Edmundo Carmona AntoranzApr 13, 2022
  19. Edmundo Carmona AntoranzApr 13, 2022
  20. Phillip SusiApr 13, 2022
  21. Edmundo Carmona AntoranzApr 13, 2022
  22. Ævar Arnfjörð BjarmasonApr 13, 2022
  23. Junio C HamanoApr 13, 2022
  24. Edmundo Carmona AntoranzApr 13, 2022
  25. Eric SunshineApr 13, 2022

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.