From: Junio C Hamano Date: Fri, 29 Jul 2022 22:04:33 GMT Subject: Re: Lost file after git merge Message-ID: In-Reply-To: <701c318c-1a1b-1793-90e8-807cf97dc948@web.de> René Scharfe writes: >> Three-way merge between X and Y is all about taking what X did if Y >> didn't have any opinion on what X touched. This is exactly that >> case. The history 0--->3 didn't have any opinion on what should be >> in P or whether P should exist, and that is why there is no change >> between these two endpoints. > > The last sentence is not necessarily true. You could also say that > 0--->3 cared so much about path P having content A that it brought it > back from the void. Determining whether a de-facto revert > - intended to return to an uncaring state of "take whatever main has" or > - meant to choose *that* specific content which incidentally is on main > is not possible from the snapshots at the merge point alone, I think. Yes, it is doable. It no longer is a three-way merge if we did so, though ;-)