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

Re: [PATCH 2/4] glossary: add commit graph description

From
Junio C Hamano <gitster@pobox.com>
Date
Jul 9, 2022, 21:20 UTC
Message-ID
<xmqqedyut22w.fsf@gitster.g>
In-Reply-To
<32777cae24de91b0fb873ea04a802630ab85aafe.1657385781.git.gitgitgadget@gmail.com>
"Philip Oakley via GitGitGadget" <gitgitgadget@gmail.com> writes:
Show 6 quoted lines
> +[[def_commit_graph]]commit graph::
> +	The commit-graph file is a supplemental data structure that
> +	accelerates commit graph walks. The existing Object Data Base (ODB)
> +	is the definitive commit graph. The "commit-graph" file is stored
> +	either in the .git/objects/info directory or in the info directory
> +	of an alternate object database.

While it says nothing technically incorrect, I suspect "The existing object data base is the definitive commit graph" may invite unneeded confusion.

I think you wanted to say that the DAG formed by traversing the pointers recorded in the objects is the authoritative source of truth and the commit-graph file is merely a precomputed cache and can be safely lost, but I am not sure the above description conveys that to anybody who does not already know it.

    The commits in the object data base form a directed acyclic
    graph (DAG) by commits referring to their parent commits.
    Pieces of information from individual commit objects that are
    needed to traverse the DAG are pre-computed in the commit-graph
    file and stored in ...

is my attempt---I am not very happy or proud about it, but it may be easier to follow.

Thanks.
Previous: Philip Oakley via GitGitGadgetNext: Philip Oakley
Message 4 of 45 in “Add some Glossary terms, and extra renormalize information.”
  1. 0/4 Add some Glossary terms, and extra renormalize information.Philip Oakley via GitGitGadget, Jul 9, 2022
  2. 1/4 glossary: add Object DataBase (ODB) abbreviationPhilip Oakley via GitGitGadget, Jul 9, 2022
  3. 2/4 glossary: add commit graph descriptionPhilip Oakley via GitGitGadget, Jul 9, 2022
  4. Junio C HamanoJul 9, 2022
  5. Philip OakleyJul 10, 2022
  6. Philip OakleyAug 30, 2022
  7. 3/4 glossary: add reachability bitmap descriptionPhilip Oakley via GitGitGadget, Jul 9, 2022
  8. 4/4 doc add: renormalize is not idempotent for CRCRLFPhilip Oakley via GitGitGadget, Jul 9, 2022
  9. Junio C HamanoJul 9, 2022
  10. Philip OakleyJul 10, 2022
  11. Junio C HamanoJul 10, 2022
  12. Philip OakleyJul 10, 2022
  13. Torsten BögershausenJul 10, 2022
  14. Philip OakleyJul 10, 2022
  15. Junio C HamanoAug 5, 2022
  16. Torsten BögershausenAug 6, 2022
  17. Philip OakleyAug 8, 2022
  18. Junio C HamanoAug 8, 2022
  19. Torsten BögershausenAug 9, 2022
  20. 0/1 .. Add extra renormalize information.Philip Oakley, Aug 10, 2022
  21. 1/1 doc add: renormalize is not idempotent for CRCRLFPhilip Oakley, Aug 10, 2022
  22. Torsten BögershausenAug 10, 2022
  23. Junio C HamanoAug 10, 2022
  24. Junio C HamanoJul 9, 2022
  25. Philip OakleyJul 10, 2022
  26. 0/3 Add some Glossary of terms informationPhilip Oakley, Oct 22, 2022
  27. 2/3 glossary: add "commit graph" descriptionPhilip Oakley, Oct 22, 2022
  28. Derrick StoleeOct 25, 2022
  29. Philip OakleyOct 29, 2022
  30. 3/3 glossary: add reachability bitmap descriptionPhilip Oakley, Oct 22, 2022
  31. Abhradeep ChakrabortyOct 24, 2022
  32. Junio C HamanoOct 24, 2022
  33. Philip OakleyOct 24, 2022
  34. Derrick StoleeOct 25, 2022
  35. Junio C HamanoOct 25, 2022
  36. Philip OakleyOct 29, 2022
  37. 1/3 doc: use 'object database' not ODB or abbreviationPhilip Oakley, Oct 22, 2022
  38. Junio C HamanoOct 23, 2022
  39. 0/4 Add some Glossary of terms informationPhilip Oakley, Oct 29, 2022
  40. 2/4 glossary: add "commit graph" descriptionPhilip Oakley, Oct 29, 2022
  41. 1/4 doc: use 'object database' not ODB or abbreviationPhilip Oakley, Oct 29, 2022
  42. 3/4 glossary: add reachability bitmap descriptionPhilip Oakley, Oct 29, 2022
  43. 4/4 doc: use "commit-graph" hyphenation consistentlyPhilip Oakley, Oct 29, 2022
  44. Taylor BlauOct 29, 2022
  45. Philip OakleyOct 29, 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.