On Thu, 2011-05-26 at 17:18 +0200, Stephen Butler wrote:
> On May 26, 2011, at 16:32 , Julian Foad wrote:
> 
> > On Thu, 2011-05-26 at 13:42 +0200, Stephen Butler wrote:
> >> I've assigned issue 3899 "forbid wc-wc copy/move of conflict victims"
> >> to myself, but I think it needs a little more discussion.
> >> 
> >> The basic idea is that the conflict data (including marker files) includes
> >> references to "their" version from the repository, which would be invalid 
> >> anywhere else in the working copy.
> > 
> > Why would a repos location be invalid?  What do you mean exactly?
> 
> That the repos location mentioned in the conflict data doesn't match the
> repos location of the copy/move target.
> 
> Suppose I check out ^/trunk to /tmp/wc, and later there's a conflict at
> /tmp/wc/A.  If I
> 
>   cd /tmp/wc
>   svn mv A B
> 
> then B has conflict data derived from ^/trunk/A, which doesn't make
> sense anymore.

The conflict data will say that the incoming change was the change from
^/trunk/A@LEFT and ^/trunk/A@RIGHT.  That does make sense.  There is
still a ^/trunk/A@LEFT and a ^/trunk/A@RIGHT in the repo.  They are the
repos locations that were being diffed and merged or updated into the
directory that is now locally located at /tmp/wc/B.  I see no problem
with this info.

I am not saying there are no problems with such copies/moves, just I
don't see a problem with the conflict-source info.

- Julian

> 
> We could remove the conflict data (from the copy/move target) 
> automatically, I suppose, perhaps with an implicit '--accept mine-full'.
> This would require supporting --accept for tree conflicts, which we
> haven't designed yet.
> 
> Steve
> 
> > 
> > 
> >> In an issue comment, Philip says:
> >> 
> >>  Perhaps we should simply prohibit copies where a conflict exists?
> >>  That would also solve another problem: actual-only node conflicts
> >>  are not copied.
> >> 
> >> Along those lines, I propose to forbid copy or moving:
> >> 
> >> 1. any conflict victim (text, property, or tree)
> >> 
> >> 2. any directory containing conflicted children
> >> 
> >> 3. any child of a tree-conflicted directory
> >> 
> >> These apply to the move/copy source only.  Resolving a tree conflict
> >> may require copying or moving an item /into/ a conflicted tree. 
> >> 
> >> Also, a property conflict on a directory should not prevent copying or 
> >> moving the directory's children.
> >> 
> >> Comments?
> >> 
> >> I have a simple solution for #1 above, and the beginning of a test.
> >> I'll commit them if I get a +1.
> >> 
> >> Regards,
> >> 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
> 
> 


Reply via email to