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

Re: Bring together merge and rebase

From
Theodore Ts'o <tytso@mit.edu>
Date
Dec 26, 2017, 18:04 UTC
Message-ID
<20171226180436.GA28565@thunk.org>
In-Reply-To
<20171226011638.GA16552@Carl-MBP.ecbaldwin.net>
On Mon, Dec 25, 2017 at 06:16:40PM -0700, Carl Baldwin wrote:
Show 9 quoted lines
> At this point, you might wonder why I'm not proposing to simply add a
> "change-id" to the commit object. The short answer is that the
> "change-id" Gerrit uses in the commit messages cannot stand on its own.
> It depends on data stored on the server which maintains a relationship
> of commits to a review number and a linear ordering of commits within
> the review (hopefully I'm not over simplifying this). The "replaces"
> reference is an attempt to make something which can stand on its own. I
> don't think we need to solve the problem of where to keep comments at
> this point.

I strongly disagree, and one way to see that is by doing a real-life experiment. If you take a look at a gerrit change that, which in my experience can have up to ten or twelve revisions, and strip out the comments, so all you get to look at it is half-dozen or more revisions. How useful is it *really*? How does it get used in practice? What development problem does it help to solve?

And when you say that it is a bug that the Gerrit Change-Id does not stand alone, consider that it can also be a *feature*. If you keep all of this in the main repo, the number of commits can easily grow by an order of magnitude. And these are commits that you have to keep forever, which means it slows down every subsequent git clone, git gc operation, git tag --contains search, etc.

So what are the benefits, and what are the costs? If the benefits were huge, then perhaps it would be worthwhile. But if you lose a huge amount of the value because you are missing the *why* between the half-dozen to dozen past revisions of the commit, then is it really worth it to adopt that particular workflow?

It seems to me your argument is contrasting a "replaces" pointer versus the github PR. But compared to the Gerrit solution, I don't think the "replaces" pointer proposal is as robust or as featureful. Also, please keep in mind that just because it's in core git doesn't guarantee that Github will support it. As far as I know github has zero support notes, for example.

						- Ted
Previous: Carl BaldwinNext: Carl Baldwin
Message 30 of 44 in “Bring together merge and rebase”
  1. Carl BaldwinDec 23, 2017
  2. Ævar Arnfjörð BjarmasonDec 23, 2017
  3. Carl BaldwinDec 23, 2017
  4. Ævar Arnfjörð BjarmasonDec 23, 2017
  5. Carl BaldwinDec 26, 2017
  6. Jacob KellerDec 26, 2017
  7. Igor DjordjevicDec 26, 2017
  8. Ævar Arnfjörð BjarmasonDec 26, 2017
  9. Carl BaldwinDec 26, 2017
  10. Paul SmithDec 26, 2017
  11. Carl BaldwinDec 26, 2017
  12. Randall S. BeckerDec 23, 2017
  13. Carl BaldwinDec 25, 2017
  14. Johannes SchindelinDec 23, 2017
  15. Alexei LozovskyDec 24, 2017
  16. Johannes SchindelinJan 4, 2018
  17. Carl BaldwinDec 25, 2017
  18. Randall S. BeckerDec 26, 2017
  19. Martin FickJan 4, 2018
  20. Johannes SchindelinDec 23, 2017
  21. Theodore Ts'oDec 25, 2017
  22. Carl BaldwinDec 26, 2017
  23. Jacob KellerDec 26, 2017
  24. Carl BaldwinDec 26, 2017
  25. Jacob KellerDec 26, 2017
  26. Martin FickJan 4, 2018
  27. Martin FickJan 5, 2018
  28. Carl BaldwinJan 5, 2018
  29. Carl BaldwinJan 5, 2018
  30. Theodore Ts'oDec 26, 2017
  31. Carl BaldwinDec 26, 2017
  32. Martin FickJan 4, 2018
  33. Carl BaldwinJan 5, 2018
  34. Martin FickJan 4, 2018
  35. Carl BaldwinJan 5, 2018
  36. Junio C HamanoJan 5, 2018
  37. Carl BaldwinJan 6, 2018
  38. Carl BaldwinJan 6, 2018
  39. Theodore Ts'oJan 6, 2018
  40. Carl BaldwinDec 27, 2017
  41. Alexei LozovskyDec 27, 2017
  42. Carl BaldwinDec 28, 2017
  43. Mike HommeyDec 26, 2017
  44. Carl BaldwinDec 27, 2017

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.