ancestor and descendant ~ clarification needed

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

In Documentation/user-manual.txt:

   In the following, we say that commit X is "reachable" from commit Y
   if commit X is an ancestor of commit Y.  Equivalently, you could say
   that Y is a descendant of X, or that there is a chain of parents
   leading from commit Y to commit X.
[...]
   However, if the current branch is a descendant of the other--so every
   commit present in the one is already contained in the other--then Git
   just performs a "fast-forward"; the head of the current branch is
   moved forward to point at the head of the merged-in branch, without
   any new commits being created.

I'm a Git newbie.  According to my understanding, the "descendant" in
the second paragraph above should be "ancestor".  I attempt to represent
my understanding using the following diagram (please see it in a
monospaced font):

................................................

         o--o--o <-- Branch A
        /
 o--o--o <-- master

................................................

"master" is the current branch, and (as I understand it) it is an
ancestor of "Branch A", because there is a chain of parents leading from
"Branch A" to master.  So "Branch A" (i.e., "the other" branch, or the
"merged-in" branch) is a descendant of master.  I even set up a test
repository and attempted to test the above diagram with "git merge-base
--is-ancestor" (and "echo $?"), but it seems to me that the master
branch is *not* a descendant of "Branch A".

I hope you can understand my words here (English is not my native
language).  Can anyone point me in the right direction (what am I
missing)?
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]