|
From: | K. Richard Pixley |
Subject: | Re: [Monotone-devel] Re: 3-way merge considered harmful |
Date: | Mon, 02 May 2005 14:13:52 -0700 |
User-agent: | Mozilla Thunderbird 1.0.2 (Macintosh/20050317) |
Richard Levitte - VMS Whacker wrote:
This constructed "work file" could also be made to have conflicts as soon as any file movement differs, for good measure. That would force the decision between differing file movements back into the hands of the programmers, and do it in a way that still fits the 3-way merge model, if I understand it correctly. The programmer would have to choose between removing the file (B->C file movement) or keeping it (B->D lack of file movement) in the first example. The programmer would have to choose between renaming the file (B->C) or keep the same name (B->D) in the second example.
Does this really solve the problem?I mean, doesn't resorting to asking the programmer simply mean that in the simple 3-point graph case where a file has been added, deleted, or renamed, we're forced to ask the programmer even though we already have very good reason to believe that we know what should be done?
The problem in the stated degenerate case is that we're lacking info. Lacking the info of what occurred in a->b, we naturally ascribe it to a->d since that transition shows a change while the a->c transition does not. The only reason our answer differs from the programmer's answer is that the programmer has access to the a->b info. If he lacked that info, he'd initially come to the same conclusion that we do. To resolve the situation, we need to include the info from a->b.
--rich
[Prev in Thread] | Current Thread | [Next in Thread] |