Re: A confusing usage of the term 'successor' in the git glossary
- From
Michael J Gruber <git@drmicha.warpmail.net>
- Date
- Nov 1, 2010, 08:38 UTC
- Message-ID
- <4CCE7C6F.9030808@drmicha.warpmail.net>
- In-Reply-To
- <AANLkTimtYGKJUG94c4qFGropVOAgCOHgX5uo8XmWRNvW@mail.gmail.com>
Lee Doolan venit, vidit, dixit 31.10.2010 19:06:
Show 13 quoted lines
> In the gitglossary > (http://www.kernel.org/pub/software/scm/git/docs/gitglossary.html) I > see this: > ,---- > | chain > | > | A list of objects, where each object in the list contains a reference > | to its successor (for example, the successor of a commit could be one > | of its parents). > `---- > > > don't you mean predecessor instead of successor?
In graph-theoretical terms, this is correct. Each commit contains "pointers" (directed edges, arcs) pointing towards the parents. (There's no way to point to children.) You can walk the graph only along directed edges, i.e. towards parents. In that sense "parent" commits are the successors (in the graph) of their "children".
So, there's an unavoidable conflict between the term in the underlying data structure (directed acyclic tree) and the data it represents if you thing of the latter as "childrenship" instead of "parentship".
Michael