Git development
 help / color / mirror / Atom feed
From: Lennert Buytenhek <buytenh@wantstofly.org>
To: git@vger.kernel.org
Subject: question on merges
Date: Mon, 2 May 2005 17:12:00 +0200	[thread overview]
Message-ID: <20050502151200.GA4592@xi.wantstofly.org> (raw)

Hi,

If a git user has X as his most recent local commit, and merges in a
commit Y from someone else to create commit Z, shouldn't commit Z have
both commit X and Y as parents?  Or is is the other way round and is it
perfectly well possible that a 'merge commit' only has one parent?

In the current linux-2.6 git tree, gregkh clones torvalds'
7f907d7486f2519c2ff1493bfbcdc36dcacd85b7 and creates a chain of commits
starting with ac21e9ff08db3d6fac41d356c77fcb531c2e03e1 and ending in
e838a0d4d5260bce452c96914a6e86b217c53c55.  torvalds merges this chain
back into his version in a9e4820c4c170b3df0d2185f7b4130b0b2daed2c, but
that commit has as parents e838a0d4d5260bce452c96914a6e86b217c53c55
(gregkh's last commit), and c0698f2f6e4839ce9463ce731c892993215ea067,
one of jejb's intermediate commits.  But now why is
7f907d7486f2519c2ff1493bfbcdc36dcacd85b7 not a parent of
a9e4820c4c170b3df0d2185f7b4130b0b2daed2c?  I would expect it to be,
since it is linus' most recent local commit when he merges in gregkh's
tree.

This pattern happens a few more times:
- davem creates c4d541106bc5d0a2134aaf9e8735eee3c70b0db2 from torvalds'
  561bbe3235da614562fb26bb14042af684971a2d, and torvalds merges davem's
  tree back in at a2755a80f40e5794ddc20e00f781af9d6320fafb (v2.6.12-rc3),
  but that commit only has one parent (even though it's a merge.)

See this image:
	http://www.liacs.nl/~buytenh/graph_2cacb3da620a4a93f3a77e1d2c8c06bb3c74bcb0.png


cheers,
Lennert

             reply	other threads:[~2005-05-02 15:06 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-05-02 15:12 Lennert Buytenhek [this message]
2005-05-02 15:47 ` question on merges Sean
2005-05-02 15:56 ` Linus Torvalds

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20050502151200.GA4592@xi.wantstofly.org \
    --to=buytenh@wantstofly.org \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox