Direct ancestors from commit to HEAD

3 messages, 2 authors, 2016-06-15 · open the first message on its own page

Direct ancestors from commit to HEAD

From: Gonsolo <hidden>
Date: 2016-06-15 22:47:25

Is there a way to see only the direct line of (merge) ancestors from 
patch to HEAD? Something like:

commit 0cb583fd2862f19ea88b02eb307d11c09e51e2f8
Merge: 723e9db... a2d1056...
Author: Linus Torvalds [off-list ref]
Date:   Tue Sep 15 10:01:16 2009 -0700

	Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6

commit 88512935a24305fea7aecc9ba4d675869e97fc2a
Merge: 8a62bab... 6b26dea...
Author: David S. Miller [off-list ref]
Date:   Fri Aug 14 12:27:19 2009 -0700

	Merge branch 'master' of 
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6

commit edd7fc7003f31da48d06e215a93ea966a22c2a03
Author: Nick Kossifidis [off-list ref]
Date:   Mon Aug 10 03:29:02 2009 +0300

     ath5k: Wakeup fixes


Here I can see exactly how the ath5k patch came to mainline and since 
when it is there.

Re: Direct ancestors from commit to HEAD

From: Jakub Narebski <hidden>
Date: 2016-06-15 22:47:25

Gonsolo [off-list ref] writes:
Is there a way to see only the direct line of (merge) ancestors from
patch to HEAD? Something like:

commit 0cb583fd2862f19ea88b02eb307d11c09e51e2f8
Merge: 723e9db... a2d1056...
Author: Linus Torvalds [off-list ref]
Date:   Tue Sep 15 10:01:16 2009 -0700

	Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6

commit 88512935a24305fea7aecc9ba4d675869e97fc2a
Merge: 8a62bab... 6b26dea...
Author: David S. Miller [off-list ref]
Date:   Fri Aug 14 12:27:19 2009 -0700

	Merge branch 'master' of
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6

commit edd7fc7003f31da48d06e215a93ea966a22c2a03
Author: Nick Kossifidis [off-list ref]
Date:   Mon Aug 10 03:29:02 2009 +0300

     ath5k: Wakeup fixes


Here I can see exactly how the ath5k patch came to mainline and since
when it is there.
I don't know whether --first-parent or --simplify-by-decoration, or
perhaps --dense is what you want (you can also use --graph for better
visualization).

Or use git-show-branch... :-)

-- 
Jakub Narebski
Poland
ShadeHawk on #git

Re: Direct ancestors from commit to HEAD

From: Gonsolo <hidden>
Date: 2016-06-15 22:47:25

I don't know whether --first-parent or --simplify-by-decoration, or
perhaps --dense is what you want (you can also use --graph for better
visualization).
Thank you. I think

git log --topo-order --dense --merges firstmerge..HEAD

comes very near. I still have to use "git log --topo-order", find the 
commit of interest, and search upwards for the next merge that is used
as firstmerge above.
Unfortunately there are many merges in the net branch but it basically 
does the job.

An example:

1. git log --topo-order, search for "Wakeup fixes" gives commit edd7fc.
2. Search backward for "^Merge" gives commit a8519d.
3. git log --topo-order --dense --merges edd7fc.., search for a8519d.
4. A search backwards for Linus gives you the merge into mainline: d7e966.

This commit is basically what I wanted to know. Even nicer would be a 
three-commit-line only consisting of the merge into wireless, the merge 
into net and the merge into mainline.
Or use git-show-branch... :-)
I don't think I can use that since I have only a master branch sitting 
around.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help