On May 26, 2011, at 17:56 , Philip Martin wrote: > Julian Foad <[email protected]> writes: > >> I am not saying there are no problems with such copies/moves, just I >> don't see a problem with the conflict-source info. > > Issue 3899 is not about repository locations but about the > left/right/mine files in ACTUAL_NODE. > > Suppose file "A/f" is in conflict: > > $ sqlite3 wc/.svn/wc.db "select * from actual_node" > 1|A/f|A||A/f.r2|A/f.r7|A/f.mine|||||||| > > Now copy A to B: > > $ sqlite3 wc/.svn/wc.db "select * from actual_node" > 1|A/f|A||A/f.r2|A/f.r7|A/f.mine|||||||| > 1|B/f|B||A/f.r2|A/f.r7|A/f.mine|||||||| > > See how B/f is in conflict but refers to the A/f files.
I agree that the references to the A/f files should not exist. But I think that that's just a symptom of the issue that a copy of a conflicted item shouldn't be conflicted. For the text conflict, if we tweak the marker file paths at the copy destination, then the left and right files (B/f.r2 and B/f.r7) give the impression that B/f existed with these contents at the given revisions. But that's highly unlikely. For a copied property-conflicted item X, the .prej file at the copy destination contains something like Trying to add new property 'score' with value '1', but property already exists with value '2'. which is also misleading. Granted, it's possible that someone just committed an X with property "score", value "1", after the update, but that has nothing to do with the current conflict. For a tree conflict victim checked out from ^/Y and copied to local path Z, either - nothing exists in the repos at Z's path - something exists in the repos at Z's path, but it's been deleted locally (the copy is the second half of a replacement) (hmmm, are there any other cases?) In either case, there's no tree conflict at Z. Steve -- Stephen Butler | Senior Consultant elego Software Solutions GmbH Gustav-Meyer-Allee 25 | 13355 Berlin | Germany tel: +49 30 2345 8696 | mobile: +49 163 25 45 015 fax: +49 30 2345 8695 | http://www.elegosoft.com Geschäftsführer: Olaf Wagner | Sitz der Gesellschaft: Berlin Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194

