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

Re: git versus CVS (versus bk)

From
Junio C Hamano <junkio@cox.net>
Date
Oct 31, 2005, 21:00 UTC
Message-ID
<7vr7a1e719.fsf@assigned-by-dhcp.cox.net>
In-Reply-To
<20051031195010.GM11488@ca-server1.us.oracle.com>
Joel Becker <Joel.Becker@oracle.com> writes:
Show 11 quoted lines
> 	In the distributed world, a pull of the "feature" repository
> pulls in all changes - the full history of the work.  This includes
> aborted tries, rewritten pieces, bug fixes, etc.  Here, the main
> repository has the detritus of the development process, but that also
> contains the full context of the work.  It goes against your claim that:
>
>> So with the distributed model, you don't have to publicly humiliate 
>> yourself when you do something stupid. Similarly, you don't have to 
>
> because that history will contain all your something stupids, plus your
> fixes for them.
Do you think anybody is that perfect?
What happens in reality is something like this:
 - you have a master tree, and your own throwaway topic
   branches.
 - you play in your own topic branches.  you make stupid
   mistakes and redo your changes many times.
 - when the tips of your topic branches are in good shape, you
   review the changes from the master tree as a whole, without
   the history.
 - you decompose the diff between the tips of your topic branch
   and the master branch into logical steps.
 - you branch off "sanitized" branches from the tip of the
   master, and apply the decomposed diffs, making one commit per
   logical change, until all your decomposed diffs are applied.
 - after making sure that the tips of the sanitized branches
   match the tips of their corresponding topic branch you did
   your work on, you throw away your true history and pretend
   you are perfect human.  Either ask your peer to pull from
   your sanitized branch tips, or run git-format-patch between
   the master and the sanitized branch tips and send them out as
   patches.

I do not know about the kernel tree but I would be surprised if any self-respecting developer wouldn't be doing this. The review-decomposition-reapplication cycle is *very* important for both keeping the public history clean and reviewable, and preservign your public image ;-).

Previous: Junio C HamanoNext: Joel Becker
Message 26 of 61 in “git versus CVS (versus bk)”
  1. waltOct 31, 2005
  2. Martin LanghoffOct 31, 2005
  3. H. Peter AnvinOct 31, 2005
  4. Linus TorvaldsOct 31, 2005
  5. Johannes SchindelinOct 31, 2005
  6. Linus TorvaldsOct 31, 2005
  7. wa1ter@myrealbox.comOct 31, 2005
  8. Randal L. SchwartzOct 31, 2005
  9. waltOct 31, 2005
  10. Daniel BarkalowNov 1, 2005
  11. Linus TorvaldsNov 1, 2005
  12. Joel BeckerOct 31, 2005
  13. Martin LanghoffOct 31, 2005
  14. Joel BeckerOct 31, 2005
  15. Petr BaudisNov 1, 2005
  16. Joel BeckerNov 1, 2005
  17. Petr BaudisNov 1, 2005
  18. Petr BaudisNov 7, 2005
  19. Josef WeidendorferNov 8, 2005
  20. Petr BaudisNov 8, 2005
  21. Randal L. SchwartzNov 1, 2005
  22. Linus TorvaldsNov 1, 2005
  23. Randal L. SchwartzNov 1, 2005
  24. Linus TorvaldsNov 1, 2005
  25. Junio C HamanoNov 1, 2005
  26. Junio C HamanoOct 31, 2005
  27. Joel BeckerOct 31, 2005
  28. Linus TorvaldsOct 31, 2005
  29. Junio C HamanoOct 31, 2005
  30. Joel BeckerOct 31, 2005
  31. Junio C HamanoNov 1, 2005
  32. Joel BeckerNov 1, 2005
  33. Martin LanghoffNov 1, 2005
  34. Joel BeckerNov 1, 2005
  35. Linus TorvaldsNov 1, 2005
  36. Petr BaudisNov 1, 2005
  37. Catalin MarinasNov 1, 2005
  38. Theodore Ts'oNov 1, 2005
  39. hgmq vs. StGITPetr Baudis, Nov 1, 2005
  40. Catalin MarinasNov 1, 2005
  41. Petr BaudisNov 1, 2005
  42. Catalin MarinasNov 1, 2005
  43. Chuck LeverNov 1, 2005
  44. Chris MasonNov 1, 2005
  45. Catalin MarinasNov 1, 2005
  46. Chris MasonNov 1, 2005
  47. Catalin MarinasNov 1, 2005
  48. Chris MasonNov 2, 2005
  49. Catalin MarinasNov 5, 2005
  50. Petr BaudisNov 9, 2005
  51. Pavel MachekNov 10, 2005
  52. Catalin MarinasNov 10, 2005
  53. Chris MasonNov 1, 2005
  54. Linus TorvaldsNov 1, 2005
  55. Catalin MarinasNov 1, 2005
  56. Catalin MarinasNov 1, 2005
  57. Chris MasonNov 1, 2005
  58. Catalin MarinasNov 1, 2005
  59. Daniel BarkalowNov 1, 2005
  60. Linus TorvaldsOct 31, 2005
  61. wa1ter@myrealbox.comOct 31, 2005

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.