[cvsnt] But... (was: No conflict when merging, where one is expected)

Mike Lehmann meiklehmann at gmx.de
Wed Sep 3 16:53:53 BST 2003


Well, deleting the file is nearly the same as removing all lines from it. 
Removing all lines, means "modifying" all lines. So in the main-trunk and 
the branch, the same lines were touched and CVS *cannot* know, how to 
solve it. Just ignoring the changes of the branch is wrong, because there 
is loss of information.

--Mike


On Wed, 03 Sep 2003 11:13:16 -0400, John Peacock <jpeacock at rowman.com> 
wrote:

> Petr Prikryl wrote:
>
>> But when I remove the file, I can see it as editing
>> of all its lines. This way, the edited regions from
>> the branch do overlap and it should look like a conflict.
>
> It is only a conflict if the _same_ lines were changed.  CVS always 
> attempts to merge files automatically and only produces a conflict if it 
> is unable to determine which change to a file/line should take 
> precedence.  It is trivial to merge a file on the branch with a missing 
> file on HEAD, so there _is_ no conflict.
>
>> Here one user modified a line and the other user
>> deleted it (with the file) -- clearly a conflict from
>> user's point of view.
>
> That is not how CVS has ever worked (or any other CMS/VCS system I have 
> used). If you want to know what changed before you merge, you can either 
> use 'cvs diff' or use 'cvs -n checkout ...' to see what would change.
>
> You want something else, not conflict resolution...
>
> John


More information about the cvsnt mailing list