git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] Document git rev-list --first-parent

From
AKAvi Kivity <avi@qumranet.com>
Date
Dec 24, 2007, 10:14 UTC
Message-ID
<476F8679.8010706@qumranet.com>
In-Reply-To
<7vejdcs9cb.fsf@gitster.siamese.dyndns.org>
Junio C Hamano wrote:
Show 23 quoted lines
>> Well, my use case is different.  All of the development merges are
>> fast-forwards (or plain patch applications); the only multiple-parent
>> merges are pulls I do from the main tree in order to advance the
>> baseline,...
>>     
>
> Yeah, that is what I meant as a special case.  If you submit
> patches and rebase the remainder of your changes to the updated
> upstream (as x.org folks seem to do), then the --first-parent
> history will not be your own development but "the global trunk
> history."  If you are the top-level maintainer and your pull
> sometimes ends up as a fast forward and sometimes a real merge,
> you will sometimes get a full history of a topic done by
> somebody else (if that person rebased on top of you) or just a
> summary single merge (otherwise), and the distinction between
> these two cases does not have anything to do with whose commits
> they are (i.e. mine vs others) or the scope of the changes
> (i.e. the trunk history vs side branch development).  It would
> not be as useful as the "looking at the list of one's own
> commits while summarizing out others' developments as merge
> commits" world view the --first-parent would give you in your
> history.
>   
Sorry, I'm confused now.  I'll try to explain more carefully what I'm doing.

I'm a mid-level maintainer for a particular subsystem (kvm). I merge patchsets from others and do my own work, but I am careful to keep everything linear (no real merges in the git sense). Every once in a while I merge from upstream or some other tree, but these are never kvm developments. Every merge window I rebase the development branch to upstream, removing commits that were later reverted, and merging fixes into the patches that introduce them and push the result to Linus. Hopefully that's clear as I'm not much of an ascii artist.

So, for me --first-parent means "commits to the development branch of kvm", whether by myself or someone else. It specifically excludes kvm commits to mainline, since that would result in a bunch of duplicated commits. But it seems to be quite different from what you're describing.

-- 
error compiling committee.c: too many arguments to function
Previous: Junio C HamanoNext: Avi Kivity
Message 7 of 9 in “Document git rev-list --first-parent”
  1. Document git rev-list --first-parentAvi Kivity, Dec 24, 2007
  2. Junio C HamanoDec 24, 2007
  3. Avi KivityDec 24, 2007
  4. Junio C HamanoDec 24, 2007
  5. Avi KivityDec 24, 2007
  6. Junio C HamanoDec 24, 2007
  7. Avi KivityDec 24, 2007
  8. Avi KivityDec 24, 2007
  9. Junio C HamanoDec 25, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.