Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
trunk
Description
Quoting Julian Foad in http://subversion.tigris.org/servlets/ReadMsg?list=dev&msgNo=136849 In the merge_file_deleted() function, case svn_node_file, we've ensured the file on disk has the same contents as the one we're wanting to delete. However, we haven't yet determined the WC schedule state of this file. In order to be able to delete it without conflict, we require that the file is versioned and its schedule state is anything except schedule_delete. Previously, the code was written to not care about tree conflicts. As long as it ended up with no file present, it didn't care how it achieved that. (I think previously the "svn_client__wc_delete" silently did nothing in this case. I haven't verified this.) Now, in implementing tree conflicts, we do have to care. If there is a versioned file, we can delete it. If not, we can't and so we must raise a conflict.
Attachments
Issue Links
- blocks
-
SVN-3210 Merge should raise a tree-conflict when deleting a modified directory (UC5-dirs)
- Closed
-
SVN-3161 Separate obstruction detection from tree conflict detection
- Closed
-
SVN-2282 handle file delete/edit/add conflicts: tree changes and conflicts
- Closed
- depends upon
-
SVN-3163 check svn_client__wc_delete's behaviour wrt tree conflicts
- Closed
- is blocked by
-
SVN-3163 check svn_client__wc_delete's behaviour wrt tree conflicts
- Closed
- is depended upon by
-
SVN-3210 Merge should raise a tree-conflict when deleting a modified directory (UC5-dirs)
- Closed
-
SVN-3161 Separate obstruction detection from tree conflict detection
- Closed
-
SVN-2282 handle file delete/edit/add conflicts: tree changes and conflicts
- Closed