On Thu, 12 Dec 2013 03:40:24 -0800 (PST)
THUFIR HAWAT <hawat.thu...@gmail.com> wrote:

> Why didn't it say that there were conflicts?  I mean, the files were
> totally different.

Because your history looked something like this (I suppose):

->A->B->C <= master
        \->D->E <= 001try_in_thread

so as you can see, "001try_in_thread" completely contains all commits
on "master" in itself, just adding one or more commits on top of the
tip of "master".

Now when you tried to merge "master" into "001try_in_thread" that
really was the same thing as an attempt to merge some past commit on
"001try_in_thread" to the tip of the same branch.  Since that past
commit is already reachable from the tip of "001try_in_thread", Git
told you there's nothing to merge.

Supposedly it might be easier for you to tackle the logic behind this
if you stop think of branches in Git in terms of other SCM systems.
In Git, a branch is just a pointer to a single commit, and since each
commit references one or more parent commits, the chain of commits
might be followed down from that "tip" commit.
So when you have a chain of commits as I depicted above, both "master"
and "001try_in_thread" are just pointers to some commits in that chain,
and since C might be reached by following the chain of parent commits
starting at E, we might say that "master" is contained in
"001try_in_thread".

-- 
You received this message because you are subscribed to the Google Groups "Git 
for human beings" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to git-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to