Community technical support mailing list was retired 2010 and replaced with a professional technical support team. For assistance please contact: Pre-sales Technical support via email to sales@march-hare.com.
On Tue, 24 Feb 2004 13:55:53 -0000, "Harrison, Andrew" <andy.harrison at anite.com> wrote: >> From: Tony Hoyle [mailto:tmh at nodomain.org] >> >> It's more that the deletion is special cased on the code as there are >> special conditions involved. eg. you merge a file which has been >> deleted on branch1 but modified on branch2.. must force a conflict >> there. > >Ok, in that case there is clearly a conflict. But if the file has been >deleted on branch1 and not modified on branch2 then surely any merge should >result in a deleted file? > How is CVS to distinguish between the case of the file being added/committed on Branch2 after it was deleted on branch1 or before? If you've just created the file and a merge goes and deletes it that's far worse than a couple of extra files hanging around. This is an unresolvable conflict.... Actually CVS should output a message for this: 'file c.txt has been modified, but has been removed in revision foo'. The code that output the message isn't being called though (by 'modified' here it means modified since the common ancestor). There are two cases: 1. Repository file at branch/merge point, file removed on branch -> remove file 2. Repository file not at branch/merge point, file removed on branch -> warning + leave file alone The only error in the code is case 2 which doesn't print a warning... case 1 actually works. Tony