Re: [git pull] core fixes

From: Linus Torvalds
Date: Thu Oct 23 2008 - 12:44:20 EST




On Tue, 21 Oct 2008, Ingo Molnar wrote:
>
> this is because the merge-base of this tree is 2e532d68a2, while your
> tree that merges this is fresher.
>
> I did not want to merge to your latest, to not create an unnecessary
> merge commit. But i could not find a way either how to generate a proper
> shortlog either.

Just do

# update the remote branches
git fetch linus
# get the log difference
git shortlog linus..

because "git log" and friends don't care about the merge base, they only
care about the actual commit _set_difference_. So "linus.." is shorthand
for "linus..HEAD", which in turn means "Which commits are in HEAD but not
in 'linus".

Doing a _diff_ is different, and when you do "git diff linus.." doesn't
mean a set difference, it means an "endpoint difference", and there you
need to find the merge base in order to get a sane answer. Of course, then
the diff won't necessarily be what I see, since common commits will
disappear. But even there, you can do

git diff linus...

where the triple dots mean "symmetric set difference" for a log-based (ie
"set operation") operation, but means "difference from common merge base"
for an endpoint operation (ie "git diff").

Linus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/