From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jeff King Subject: Re: [BUG?] git checkout $commit -- somedir doesn't drop files Date: Tue, 17 Sep 2013 18:03:45 -0400 Message-ID: <20130917220345.GA22914@sigill.intra.peff.net> References: <20130917190659.GA15588@pengutronix.de> <20130917201259.GB16860@sigill.intra.peff.net> <20130917202917.GA20020@sigill.intra.peff.net> <20130917212106.GB20178@sigill.intra.peff.net> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Cc: Uwe =?utf-8?Q?Kleine-K=C3=B6nig?= , git@vger.kernel.org To: Junio C Hamano X-From: git-owner@vger.kernel.org Wed Sep 18 00:04:00 2013 Return-path: Envelope-to: gcvg-git-2@plane.gmane.org Received: from vger.kernel.org ([209.132.180.67]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1VM3NF-0004Dx-0y for gcvg-git-2@plane.gmane.org; Wed, 18 Sep 2013 00:03:57 +0200 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753343Ab3IQWDx (ORCPT ); Tue, 17 Sep 2013 18:03:53 -0400 Received: from cloud.peff.net ([50.56.180.127]:48340 "EHLO peff.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752003Ab3IQWDw (ORCPT ); Tue, 17 Sep 2013 18:03:52 -0400 Received: (qmail 27034 invoked by uid 102); 17 Sep 2013 22:03:53 -0000 Received: from c-71-63-4-13.hsd1.va.comcast.net (HELO sigill.intra.peff.net) (71.63.4.13) (smtp-auth username relayok, mechanism cram-md5) by peff.net (qpsmtpd/0.84) with ESMTPA; Tue, 17 Sep 2013 17:03:53 -0500 Received: by sigill.intra.peff.net (sSMTP sendmail emulation); Tue, 17 Sep 2013 18:03:45 -0400 Content-Disposition: inline In-Reply-To: Sender: git-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Archived-At: On Tue, Sep 17, 2013 at 03:00:41PM -0700, Junio C Hamano wrote: > > So given that, is it fair to say that a one-way "go here" merge, limited > > by pathspec, is the closest equivalent? > > Sorry, but it is unclear to me what you mean by one-way "go here" > merge. Do you mean oneway_merge() in unpack-trees.c? Yes, that is what I meant. In my mind, oneway_merge is "go here unconditionally", twoway_merge is "go from A to B, respecting changes already made from A", and threeway_merge is a "real" merge. But I am not sure if that is accurate or just my confused mental model of unpack-trees. :) -Peff