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

Re: [PATCH] Simplified GIT usage guide

From
Michael J Gruber <git@drmicha.warpmail.net>
Date
Dec 19, 2008, 09:26 UTC
Message-ID
<494B68B8.20107@drmicha.warpmail.net>
In-Reply-To
<c6d9bea0812181647n55fbb6b9w333702fc80127198@mail.gmail.com>
C. Scott Ananian venit, vidit, dixit 19.12.2008 01:47:
Show 9 quoted lines
> On Fri, Dec 12, 2008 at 1:28 PM, David Howells <dhowells@redhat.com> wrote:
>> Add a guide to using GIT's simpler features.
>> diff --git a/Documentation/git-haters-guide.txt b/Documentation/git-haters-guide.txt
>> +In the above example, I've assumed that you've got your own tree with the head
>> +at commit C3, and that you've got a branch that you want to merge, which has
>> +its head at commit B3.  After merging them, you'd end up with a directed,
>> +cyclic tree:
> 
> That should be, "acyclic".  There are no cycles, because the graph is directed.

Well, directed graphs can have cycles. But the revision graph of a revision control system has to be an acyclic directed graph. Otherwise parenthood would be a complicated matter ;)

And no, trees by definition don't have cycles. Also, a "tree" in git lingo is not the graph theoretic notion (which David uses, though incorrectly); this only adds unnecessary points of confusion.

For whatever reason the graphs in version control systems are called "dag"s, i.e. directed acyclic graphs, even though "acyclicity" depends on whether you look at the directed or undirected graphs. (Branching then merging gives an undirected cycle.) I guess one may read "directed" as an attribute to "acyclic" here, i.e. ((directed acyclic) graph) rather than (directed (acyclic graph)); so to say "directedly acyclic graph". Or it's just that "dag" reads much better than "adg"...

So, please: Simplification yes, but not if it's unnecessarily misleading or even plain wrong (referring to the original proposal, not the comment).

Cheers, Michael

Previous: C. Scott AnanianNext: C. Scott Ananian
Message 37 of 38 in “Simplified GIT usage guide”
  1. Simplified GIT usage guideDavid Howells, Dec 12, 2008
  2. Miklos VajnaDec 12, 2008
  3. David HowellsDec 12, 2008
  4. Miklos VajnaDec 12, 2008
  5. David HowellsDec 13, 2008
  6. Miklos VajnaDec 13, 2008
  7. Johannes SchindelinDec 12, 2008
  8. David HowellsDec 12, 2008
  9. Sverre RabbelierDec 12, 2008
  10. Aidan Van DykDec 12, 2008
  11. Nick AndrewDec 13, 2008
  12. Ping YinDec 14, 2008
  13. Paul E. McKenneyDec 19, 2008
  14. Junio C HamanoDec 19, 2008
  15. Paul E. McKenneyDec 19, 2008
  16. valdis.kletnieks@vt.eduDec 24, 2008
  17. Johannes SchindelinDec 19, 2008
  18. Paul E. McKenneyDec 19, 2008
  19. Jakub NarebskiDec 12, 2008
  20. David HowellsDec 13, 2008
  21. Sverre RabbelierDec 13, 2008
  22. Willy TarreauDec 19, 2008
  23. Nicolas PitreDec 13, 2008
  24. J. Bruce FieldsDec 12, 2008
  25. J. Bruce FieldsDec 13, 2008
  26. David HowellsDec 13, 2008
  27. Jeff GarzikDec 12, 2008
  28. Chris FriesenDec 12, 2008
  29. David HowellsDec 13, 2008
  30. Junio C HamanoDec 13, 2008
  31. Nick AndrewDec 13, 2008
  32. Nicolas PitreDec 12, 2008
  33. Junio C HamanoDec 13, 2008
  34. Matthieu MoyDec 14, 2008
  35. Marcin SlusarzDec 14, 2008
  36. C. Scott AnanianDec 19, 2008
  37. Michael J GruberDec 19, 2008
  38. C. Scott AnanianDec 19, 2008

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.